21回答

0收藏

Linux高性能服务器编程 PDF 电子书

电子书 电子书 1653 人阅读 | 21 人回复 | 2023-09-01

Java电子书:Linux高性能服务器编程 格式 pdf 电子书 PDF 电子书 Java吧 java8.com
: k0 Y4 a/ h2 k  S- N; k4 W
, g* f8 Q& S# R2 A0 z5 t
5 W1 [/ ]- [; P: s! d+ }( E# b
编号:mudaima-P0207【Java吧 java8.com】
; A+ [) z( g6 n5 T! @1 Y
2 v3 C) N( X% R0 g& V) i

2 R' W( @( z3 w$ R4 I) u6 @  x7 \- I
3 z& l: U. d% |5 cJava电子书目录:
第一篇 TCPIP协议详解
8 Z: _3 r7 p' Z* m# |6 G 第1章 TCPIP协议族 6 l( X/ d, u; r
  1.1 TCPIP协议族体系结构以及主要协议 ( Z" A% B! T: N) Q0 z5 D
   1.1.1 数据链路层 / }+ r/ ?+ c; [& b7 G8 Q
   1.1.2 网络层 * `! s" ~# E) ^6 X
   1.1.3 传输层
$ o. U+ L/ t& k   1.1.4 应用层
) I- m- n( T4 n% q* M# {5 D$ y* j( q  1.2 封装 % |$ z9 c0 w" W
  1.3 分用 2 c  v/ X1 Z( g: F
  1.4 测试网络
5 w+ h( n2 s( q& [$ |8 ~  1.5 ARP协议工作原理 7 K% Q4 ^8 f! X) K6 c6 U% k/ \* k1 p
   1.5.1 以太网ARP请求应答报文详解 : W, F& S2 {  m9 D: V8 N$ A  V( I
   1.5.2 ARP高速缓存的查看和修改 9 a% B+ F* _" N0 A+ _/ H: H
   1.5.3 使用tcpdump观察ARP通信过程 3 J7 D! {  `& u4 @% u. L3 H
  1.6 DNS工作原理 ( w, Y  O' X( I4 d. S* C* z
   1.6.1 DNS查询和应答报文详解 % d) M7 L3 p" z
   1.6.2 Linux下访问DNS服务
4 A$ u' E" i! s. h# F   1.6.3 使用tcpdump观察DNS通信过程 ! [- }, A. |/ f0 ~0 \
  1.7 socket和TCPIP协议族的关系
3 }! R* F1 g, t/ o7 ~* N; s 第2章 IP协议详解
5 h# W; i, W8 G  2.1 IP服务的特点
7 }5 b+ V3 i6 s! y  2.2 IPv4头部结构
: c/ U0 C" b8 M( s   2.2.1 IPv4头部结构
4 C- ]0 `% B8 G4 c7 S9 K# h' X   2.2.2 使用tcpdump观察IPv4头部结构
8 f$ q3 o# N6 {* Z  2.3 IP分片
6 A2 p3 H% E& h8 [5 X% x/ h: C  2.4 IP路由
5 c! l- n0 l$ J- s' a2 s   2.4.1 IP模块工作流程 - q3 l4 I! J2 L/ H. X, M) |
   2.4.2 路由机制 2 G1 j. F, ]7 k4 \1 W$ L& N
   2.4.3 路由表更新
2 G# ?) O& G! E, ~/ [# m  2.5 IP转发
2 G& a7 P( a6 J+ ~  U9 d  2.6 重定向 - S+ [) d0 V2 J& g
   2.6.1 ICMP重定向报文 " N% d; k$ a& e: @# h- U# q
   2.6.2 主机重定向实例
$ c4 [/ g4 H% @% ~: G  2.7 IPv6头部结构 * N$ V7 [: @: T
   2.7.1 IPv6固定头部结构
% L* l" ?6 P8 o   2.7.2 IPv6扩展头部
% r. D7 ?9 I3 A/ d 第3章 TCP协议详解
! Q( I8 G9 c$ E8 r$ ~  3.1 TCP服务的特点 ! y3 I: M# Q( t, t" q
  3.2 TCP头部结构 4 p9 j8 N$ q2 P
   3.2.1 TCP固定头部结构
6 V  I: r. P& P   3.2.2 TCP头部选项 - i6 o1 h% h. I! y& j
   3.2.3 使用tcpdump观察TCP头部信息 2 t# d0 `$ m; U2 n8 U
  3.3 TCP连接的建立和关闭 7 [+ s2 [  I& N4 P: h. Y
   3.3.1 使用tcpdump观察TCP连接的建立和关闭
7 s, O' {- z* E1 h5 Y   3.3.2 半关闭状态 ! K+ V: R6 f9 i9 i/ t& p
   3.3.3 连接超时 7 D$ Y6 r' A4 N( D3 \
  3.4 TCP状态转移   k5 z' b; O: r
   3.4.1 TCP状态转移总图 ( p* T$ |$ S' ?: q; G; F1 H
   3.4.2 TIME_WAIT状态 ) V' _& s1 v" l, e' s2 ^" @* W
  3.5 复位报文段
. w( G: I/ r; C   3.5.1 访问不存在的端口 ) s3 y# t1 @! s4 h; c) I; J+ G
   3.5.2 异常终止连接 & k1 y( T& q( k- q, H9 \
   3.5.3 处理半打开连接
% F9 @! h" @3 b8 R# I* q  3.6 TCP交互数据流
2 C* J0 `! ^- l0 l1 X  3.7 TCP成块数据流
$ i6 W8 I. x% \+ h7 \, u( ?& c4 w- _  3.8 带外数据
* M9 A2 E( d2 t. Y9 d" T! P0 _  3.9 TCP超时重传
+ v% D* Q) f5 a3 f' s& ^  3.10 拥塞控制 # e3 {& l/ }. [4 O- Q8 e1 L$ P
   3.10.1 拥塞控制概述
. I+ p1 m0 `# l$ L" G   3.10.2 慢启动和拥塞避免   ?* d4 m2 b5 K5 N; [, ~! _
   3.10.3 快速重传和快速恢复
+ t6 v  z' j- V* ~ 第4章 TCPIP通信案例:访问Internet上的Web服务器 - _1 w9 H1 R. N) E
  4.1 实例总图
; u. x. n5 o5 P7 J$ {  4.2 部署代理服务器 ' p5 E* H' C: D- C8 E/ Z
   4.2.1 HTTP代理服务器的工作原理
  H4 P! `, p2 N1 H   4.2.2 部署squid代理服务器
. F4 ]0 V4 b7 [6 ^# T8 P4 g& v  4.3 使用tcpdump抓取传输数据包 7 r1 j9 ~- t; f1 M: I/ Z, y
  4.4 访问DNS服务器 # x$ R1 {0 d7 v3 k/ `( p) }
  4.5 本地名称查询
* H6 K' c# S0 \% v# V  4.6 HTTP通信
" t7 `4 _9 r. D: U; n5 m7 Q7 Y   4.6.1 HTTP请求
. P9 M$ _6 o& V$ |1 \7 F   4.6.2 HTTP应答
2 I/ n/ b( W2 L* V  4.7 实例总结
& w- k5 W1 w' Y; z$ ^第二篇 深入解析高性能服务器编程' o- g: k; {* ?& x0 P
 第5章 Linux网络编程基础API
  W6 @2 N  g# m8 _6 g  5.1 socket地址API
* ?! [7 @9 E# w7 @, ?   5.1.1 主机字节序和网络字节序
; u, G1 _) \6 {. t& [   5.1.2 通用socket地址
* g/ [2 V3 C# s) A9 @   5.1.3 专用socket地址
1 t" u8 d, L$ u1 Z+ J' w4 `3 Y   5.1.4 IP地址转换函数
- b1 }+ R' m9 I* f1 f  5.2 创建socket / s( z' a& U  S/ c7 Q
  5.3 命名socket $ `3 {9 \- t5 [# g' u& G- m$ }) K
  5.4 监听socket
/ e5 q. C1 ]. ]  5.5 接受连接 9 r9 I7 X" t  K9 O. z' P3 ?0 T
  5.6 发起连接
" F" L4 E) s* w& @1 h8 ]7 f  5.7 关闭连接
1 H4 R' l9 a3 E4 K/ n* L  5.8 数据读写 % x: k; D, t, X. p7 q
   5.8.1 TCP数据读写
  d/ `- ]4 Y9 |5 n3 a; E   5.8.2 UDP数据读写   M- f7 U% g) w
   5.8.3 通用数据读写函数
+ a# R9 D9 i8 e  5.9 带外标记
# g3 j2 w- |! o8 c  5.10 地址信息函数 - A$ w9 Q6 A& y/ K5 L5 r1 U
  5.11 socket选项 . S! o$ ]1 w! e& r* ~) N
   5.11.1 SO_REUSEADDR选项 ( T) q3 a. w7 `0 Q7 Q
   5.11.2 SO_RCVBUF和SO_SNDBUF选项
6 N- A# o, c* W% r; a   5.11.3 SO_RCVLOWAT和SO_SNDLOWAT选项
1 u( ~( M5 `$ O9 O   5.11.4 SO_LINGER选项
+ b# {* s2 ^- O4 b3 N  5.12 网络信息API
; `/ k# A/ c1 R8 ]$ Y   5.12.1 gethostbyname和gethostbyaddr ' Z) F! j8 [. ^8 J& Q* E8 i
   5.12.2 getservbyname和getservbyport
! r8 S7 [3 P8 W/ Y  c% f& C- v/ s. G   5.12.3 getaddrinfo " u- v" L9 o& ~2 \/ P
   5.12.4 getnameinfo
+ X5 W# ?+ X8 m/ w0 a  P 第6章 高级IO函数 9 M0 ]+ @' O! C4 g' v
  6.1 pipe函数   Q1 D$ i$ t  E5 _8 S, r5 l
  6.2 dup函数和dup2函数
( e, {+ K' Z( t2 E1 ~7 s: j  6.3 readv函数和writev函数
' k2 u3 _. ~, ^  6.4 sendfile函数 * k% W! \3 r: l- n( K+ G
  6.5 mmap函数和munmap函数
# r1 l& w& e) l5 {4 J" A  6.6 splice函数 & y6 o% v  c$ x4 N2 W
  6.7 tee函数 8 U5 I9 b! Q1 y& Z' ~# C; e
  6.8 fcntl函数 % M$ K8 P" ^/ A
 第7章 Linux服务器程序规范 ) _  i1 i$ P& x4 {# ~" p
  7.1 日志
2 T1 k: Y! J0 l1 A( n( I   7.1.1 Linux系统日志
' \2 x' _* p# i. C3 S   7.1.2 syslog函数 1 ?2 L. @8 s4 }
  7.2 用户信息 # U' h; Y+ m8 @8 F! |
   7.2.1 UID、EUID、GID和EGID ; c: ?$ C0 D" d
   7.2.2 切换用户 + {9 K: F0 z+ ]  Z2 D3 K  _. v
  7.3 进程间关系 ( ?' O/ R% H; O: R
   7.3.1 进程组
3 Y. ~5 w9 L2 N/ l8 C+ v! n7 R. l   7.3.2 会话
- b/ q8 P. o$ a: e! [" b   7.3.3 用ps命令查看进程关系
5 p( ^5 \# `7 D) h# i  7.4 系统资源限制
( I- e4 f% N8 Z  z) ~' @  X  7.5 改变工作目录和根目录 & L2 @8 K' h( O+ w) d
  7.6 服务器程序后台化
" l% A/ S- s. H# y: r9 E 第8章 高性能服务器程序框架 * i5 ~1 `8 H7 b, T: c* |. U* P; |
  8.1 服务器模型 ' g& x$ Y  q* H$ a* m" y1 u" @
   8.1.1 CS模型   }+ W1 Z1 c* N1 M) w
   8.1.2 P2P模型 % ]7 S/ }$ U% v: [
  8.2 服务器编程框架 ! K& D) ~( q% d% M6 v
  8.3 IO模型 , ~6 Y* L5 T; s5 b3 d* `; y( C
  8.4 两种高效的事件处理模式
9 S5 m/ k+ c( f( ]- U# x7 M   8.4.1 Reactor模式 ) G, @  U: z' q6 E6 _! P2 V2 O
   8.4.2 Proactor模式 : i, t, @- u9 r) R! W! H( O
   8.4.3 模拟Proactor模式   g( @& V) Y6 N8 }% x: j+ F! H/ E
  8.5 两种高效的并发模式
$ T. q. D9 o/ Y   8.5.1 半同步半异步模式
7 C: C7 D! Q+ R" u   8.5.2 领导者追随者模式
0 A1 m, N5 ~% M  8.6 有限状态机
: L: G; d/ w8 K, z% S( q6 X  8.7 提高服务器性能的其他建议
3 W9 L; @% Y) z- Y' o" }6 m8 w& w   8.7.1 池
# \# W* `/ y& G2 u   8.7.2 数据复制 - ~* r8 Q( H5 L( @
   8.7.3 上下文切换和锁
" |" z+ }" k! l5 m( E 第9章 IO复用
0 E" y; K  T. o! m- D3 c2 y  9.1 select系统调用 . Q# L  k. `) `; s6 G7 }& {
   9.1.1 select API
* Y0 r8 n$ z) v! `/ m- {: X   9.1.2 文件描述符就绪条件
4 u/ G3 l1 F2 y* v1 G( a2 a7 U   9.1.3 处理带外数据
8 U+ X. B" T; _2 c7 L  9.2 poll系统调用
: h7 z: |2 q- k  9.3 epoll系列系统调用
' D$ B4 o, ~  F& {% U/ \   9.3.1 内核事件表
& v# K9 ~6 H( L3 F; J; J% J   9.3.2 epoll_wait函数
7 c' Z: e% }. d0 b2 w9 @. r   9.3.3 LT和ET模式 8 f6 Z7 U! a3 ~% H  r% d  U
   9.3.4 EPOLLONESHOT事件 0 I+ b7 ~3 b) l% ]6 H7 D
  9.4 三组IO复用函数的比较 . O7 u1 K- m4 c% b6 d$ w" a
  9.5 IO复用的高级应用一:非阻塞connect
  D2 h1 {$ ?" Z9 @3 c  9.6 IO复用的高级应用二:聊天室程序 5 h( _8 \7 e& G" {8 [
   9.6.1 客户端 + s3 [2 d' \! Y( C
   9.6.2 服务器
# Z! [3 ~5 X7 F4 W  9.7 IO复用的高级应用三:同时处理TCP和UDP服务
( e" c: b! d! J1 z% J* A  9.8 超级服务xinetd 4 \/ _9 i8 C# R1 J3 l& Q! J- f
   9.8.1 xinetd配置文件 - p) ?' K0 {7 v' U9 d$ q
   9.8.2 xinetd工作流程
4 }) i$ D  G, k( d- d* o4 g 第10章 信号 2 x7 t, u8 T/ [  p
  10.1 Linux信号概述 % o$ D( l! D% O
   10.1.1 发送信号 . n9 x' I# w1 \/ C, H
   10.1.2 信号处理方式
" ~) W4 g$ v( a; Y   10.1.3 Linux信号 " W/ X+ P! `2 L) Y4 Y! A! z
   10.1.4 中断系统调用
0 S5 L+ e7 L7 K$ b- i, Y( M  10.2 信号函数 ( O: M, m* ~* u! P- P
   10.2.1 signal系统调用 2 B  V5 L* h" ^6 y0 u" ~4 j
   10.2.2 sigaction系统调用 : j% T9 H0 j* V  ^6 q! z6 K; T5 y
  10.3 信号集
# q  A+ V8 i. ]" o, G   10.3.1 信号集函数 0 A4 W# N; U8 a' }7 D
   10.3.2 进程信号掩码
6 ]7 _0 F& g  P; y2 `   10.3.3 被挂起的信号
/ U7 [* J  j2 h. z  10.4 统一事件源 ) q! Y* E) ^) D0 B
  10.5 网络编程相关信号 % W( @. M8 C9 ]1 K1 k0 N
   10.5.1 SIGHUP
# F, h! {  v3 N   10.5.2 SIGPIPE
; }9 ~, A) |7 e! F# B   10.5.3 SIGURG
6 |3 `2 ^* f+ C! Q6 Z( _9 v 第11章 定时器 # F8 J1 U1 H0 U* a$ a; s
  11.1 socket选项SO_RCVTIMEO和SO_SNDTIMEO * {8 J/ [' G8 c: V3 X
  11.2  SIGALRM信号
7 c( K- q7 P. H/ {- e% V   11.2.1 基于升序链表的定时器 3 o1 ^' t. a. S$ C# ?
   11.2.2 处理非活动连接 1 c7 _$ d" U1 U0 O$ }4 \2 j
  11.3 IO复用系统调用的超时参数 1 X: q9 P8 ^1 {9 g/ ^
  11.4 高性能定时器 ( [7 Y" ]7 R1 l% g! Y# |
   11.4.1 时间轮
" a9 [$ S1 R* ~- l/ ~  ~# {   11.4.2 时间堆
% z7 i( ^" a5 s4 b. K& T- x 第12章 高性能IO框架库Libevent % t0 K" q5 w  l+ N+ R! j
  12.1 IO框架库概述 % Q6 K1 L# p3 b& b8 o8 _  c5 Z
  12.2 Libevent源码分析
1 P0 ]1 ?* S6 F! m# B   12.2.1 一个实例 1 J% S! e+ A" a. P5 m9 y3 [$ M
   12.2.2 源代码组织结构
0 R9 ]% K8 T0 H3 v   12.2.3 event结构体 8 r( ]9 c$ e5 W8 `+ _# U5 x
   12.2.4 往注册事件队列中添加事件处理器
# r: J9 h+ q) _$ T' e   12.2.5 往事件多路分发器中注册事件
& ~" O+ E% t, A   12.2.6 eventop结构体
: c+ x$ e) \2 f( g   12.2.7 event_base结构体
, ~" a* K. P% _   12.2.8 事件循环 1 l; k1 A0 J: w, n( K, P' V& |
 第13章 多进程编程 9 r: R: |; p# t6 I: }
  13.1 fork系统调用
  t% z/ G% c7 _: q- {9 {+ R  13.2 exec系列系统调用 7 Q; ?6 W8 w+ y3 i1 b# C0 b
  13.3 处理僵尸进程 & W8 k+ H/ n9 [" z+ ?# G2 J/ f
  13.4 管道
$ I! ^0 u% c- _* V+ X. y  13.5 信号量 2 G/ h. E' v8 H% G
   13.5.1 信号量原语
: R" _; \5 g5 j  P; `   13.5.2 semget系统调用
/ w1 x5 z) A, a4 D% Q& i   13.5.3 semop系统调用 * M2 V1 E# K9 U, W) Y  J. Z
   13.5.4 semctl系统调用 , G9 l) O, f/ u4 j/ V
   13.5.5 特殊键值IPC_PRIVATE
9 @! o' E- ^% T2 H/ ], c; m  13.6 共享内存
- z" n' F8 W) v  E% I- E  d   13.6.1 shmget系统调用 ( o( ]  @; p- v# z- x
   13.6.2 shmat和shmdt系统调用 : I* N0 r! ~) w
   13.6.3 shmctl系统调用 7 H4 z3 y# F) C: f
   13.6.4 共享内存的POSIX方法
- P6 O# p; x% Z2 e- H- F2 d5 C   13.6.5 共享内存实例 ) u' k- c& b  ]6 V. M; K6 o* M
  13.7 消息队列 ) I( G% t( d* [3 Z
   13.7.1 msgget系统调用
$ q: y! f% i; k' h, n# V1 C2 H   13.7.2 msgsnd系统调用 ! u6 s$ b! w3 z
   13.7.3 msgrcv系统调用 ! {) E8 s7 w; b. O
   13.7.4 msgctl系统调用 * k% U! P# d" z- Q! m
  13.8 IPC命令 + c: ~9 p+ m" q$ Y* t8 ?$ K
  13.9 在进程间传递文件描述符
% b$ @8 E/ S- F0 |8 A( f 第14章 多线程编程
( l& g5 T$ m4 j5 t5 W6 c  14.1 Linux线程概述
" y' N8 T* U& y4 u( h0 i   14.1.1 线程模型 ' Z) i* p: }7 |- w$ ]% f1 q
   14.1.2 Linux线程库
5 y( h# P2 n1 R  J; }  14.2 创建线程和结束线程
1 q, B% }3 p# ^) [/ d  14.3 线程属性
. U1 z9 E& ~, Z! U, I: m8 t  14.4 POSIX信号量
, N6 a( k1 b1 A, {% d- E) b8 |  14.5 互斥锁
: q; `5 \* Y7 N5 O2 ]   14.5.1 互斥锁基础API 1 a6 t2 O% R" ~4 f( v1 \
   14.5.2 互斥锁属性 & t. O( w" f% w7 J
   14.5.3 死锁举例 ; L, ~, Z8 w8 r$ ?: O4 B# R
  14.6 条件变量 3 a0 n% q7 L. p5 u% B% }
  14.7 线程同步机制包装类 ! x% [0 O( Y2 M
  14.8 多线程环境 . A1 x; ^  |! v0 K. y/ Z: y
   14.8.1 可重入函数 9 {+ }4 P" e! b
   14.8.2 线程和进程
0 I/ G$ p+ [" e8 _* i$ }# C   14.8.3 线程和信号
/ f  O6 \# F! O! L- B5 u) ]! t' q# h 第15章 进程池和线程池 % I8 @$ f8 a- h
  15.1 进程池和线程池概述
2 b) N. X3 v  p- O' ?+ y  15.2 处理多客户 0 C1 E8 I4 y3 C5 O
  15.3 半同步半异步进程池实现
0 J5 ^! |- H0 c6 o5 B) A  15.4 用进程池实现的简单CGI服务器
! t6 x% M; r; |% n) N  15.5 半同步半反应堆线程池实现 3 v2 K5 t" ~/ R
  15.6 用线程池实现的简单Web服务器 ! N/ @5 P9 u# O; y8 p
  15.6.1 http_conn类 ' o0 [  L  q1 W0 n0 ]
  15.6.2 main函数 0 }* o. m0 u' U
第三篇 高性能服务器优化与监测
5 A7 _9 B" J: E# M, t# r# L1 O! D 第16章 服务器调制、调试和测试 - l) t) \; w% u! _+ v* R& p
  16.1 最大文件描述符数
) a, s6 j8 f$ ^$ d3 {& E" `  16.2 调整内核参数
4 `) s" @- p) o/ u, l/ h   16.2.1 procsysfs目录下的部分文件
6 @8 d) X8 M2 b4 W3 E   16.2.2 procsysnet目录下的部分文件
  a; c+ E4 c# e- Y; G  16.3 gdb调试
" r; b, X  |. [0 U. d   16.3.1 用gdb调试多进程程序 ) q" j3 ~" u1 I. F( o8 b
   16.3.2 用gdb调试多线程程序
. n3 I* c( s( O& o  16.4 压力测试 : [; ?0 `! w0 L0 T6 F. |
 第17章 系统监测工具
$ J) n0 }8 s6 N% [1 |  17.1 tcpdump
7 |  T* i9 z! D/ \" X  17.2 lsof
: Q/ k3 E. l/ @0 c7 K9 M* q5 v' s) [  17.3 nc
# j6 Q4 c& I' [2 a1 K6 x  17.4 strace 1 E$ y4 D- B) @5 d- C2 `
  17.5 netstat ) i5 e, K( z: W4 t0 b9 I
  17.6 vmstat
( _, a6 l6 R9 A7 I  17.7 ifstat
5 e! S- m0 [/ n9 R! A  17.8 mpstat
% C3 k! \/ T' ~- T: ^% P  参考文献

* K: z1 ]% l; d
1 N+ [5 P9 w0 W) w# l: Q
* _+ [' ~& M2 U/ z3 W百度云盘下载地址(完全免费-绝无套路):
游客,如果您要查看本帖隐藏内容请回复
( E3 a( Y8 |6 ^

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
分享到:

回答|共 21 个

世袭者

发表于 2023-9-22 21:38:43 | 显示全部楼层

白漂来了

强云汽修

发表于 2023-9-23 16:30:52 | 显示全部楼层

都是干货,谢谢啦

独妖

发表于 2023-9-23 20:15:21 | 显示全部楼层

真心不错 收下下

大敏子

发表于 2023-9-24 12:43:14 | 显示全部楼层

学习java,就选java吧了

周姨

发表于 2023-9-24 21:50:31 | 显示全部楼层

资料免费 给力

喜喜羊

发表于 2023-9-25 20:38:41 | 显示全部楼层

免费资源 真的无套路

等风去火星

发表于 2023-9-28 14:09:27 | 显示全部楼层

资源很新 好好好

落叶恋晨

发表于 2023-10-2 14:24:10 | 显示全部楼层

都是干货,谢谢啦

昆山男人

发表于 2023-10-2 16:38:01 | 显示全部楼层

good 白漂啦
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则