~~~[purchase:699]
http://www.hmoore.net/admins/swoole/purchase
~~~
- Swoole
- 入門指引
- 環境依賴
- 編譯安裝
- 編譯參數
- 常見錯誤
- 運行程序
- 創建TCP服務器
- 創建UDP服務器
- 創建Web服務器
- 創建WebSocket服務器
- 設置定時器
- 執行異步任務
- 創建同步TCP客戶端
- 創建異步TCP客戶端
- 網絡通信協議設計
- 異步編程入門
- sleep/usleep的影響
- exit/die函數的影響
- while循環的影響
- 版本更新記錄
- 1.8.3
- 1.8.4
- 1.8.5(開發中)
- 新特性使用
- 1.7.16 使用迭代器遍歷Server所有連接
- 1.7.5 在Server中使用swoole_table
- 1.7.5 swoole_client支持sendfile接口
- 1.7.4 SSL隧道加密TCP-Server
- 1.7.4 task進程中使用毫秒定時器
- 1.7.3 固定包頭+包體協議自動分包
- 1.7.3 onTask直接return取代finish函數
- 1.7.2 swoole_process多進程模塊的使用
- 1.7.2 task進程使用消息隊列
- 常見問題
- 升級swoole版本的常見問題
- 生成可分發的二進制swoole版本
- Connection refused是怎么回事
- Resource temporarily unavailable [11]
- Cannot assign requested address [99]
- pcre.h: No such file or directory
- 在phpinfo中有在php-m中沒有
- swoole與node.js相比有哪些優勢
- swoole與golang相比有哪些優勢
- my_global.h: No such file or directory
- undefined symbol: __sync_bool_compare_and_swap_4
- 學習Swoole需要掌握哪些基礎知識
- 開發者列表
- php.ini選項
- 項目路線圖
- 提交錯誤報告
- 內核參數調整
- 周邊相關項目
- Server
- 函數列表
- swoole_server::__construct
- swoole_server::set
- swoole_server::on
- swoole_server::addListener
- swoole_server::addProcess
- swoole_server::listen
- swoole_server::start
- swoole_server::reload
- swoole_server::shutdown
- swoole_server::tick
- swoole_server::after
- swoole_server::defer
- swoole_server::clearTimer
- swoole_server::close
- swoole_server::send
- swoole_server::sendfile
- swoole_server::sendto
- swoole_server::sendwait
- swoole_server::sendMessage
- swoole_server::exist
- swoole_server::connection_info
- swoole_server::connection_list
- swoole_server::bind
- swoole_server::stats
- swoole_server::task
- swoole_server::taskwait
- swoole_server::finish
- swoole_server::heartbeat
- swoole_get_mysqli_sock
- swoole_set_process_name
- swoole_version
- swoole_strerror
- swoole_errno
- swoole_get_local_ip
- 屬性列表
- swoole_server::$setting
- swoole_server::$master_pid
- swoole_server::$manager_pid
- swoole_server::$worker_id
- swoole_server::$worker_pid
- swoole_server::$taskworker
- swoole_server::$connections
- 配置選項
- reactor_num
- worker_num
- max_request
- max_conn (max_connection)
- task_worker_num
- task_ipc_mode
- task_max_request
- task_tmpdir
- task_worker_max
- dispatch_mode
- message_queue_key
- daemonize
- backlog
- log_file
- log_level
- heartbeat_check_interval
- heartbeat_idle_time
- open_eof_check
- open_eof_split
- package_eof
- open_length_check
- package_length_type
- package_max_length
- open_cpu_affinity
- cpu_affinity_ignore
- open_tcp_nodelay
- tcp_defer_accept
- ssl_cert_file
- ssl_method
- user
- group
- chroot
- pipe_buffer_size
- buffer_output_size
- enable_unsafe_event
- discard_timeout_request
- enable_reuse_port
- 監聽端口
- 可選參數
- 可選回調
- 事件回調函數
- onStart
- onShutdown
- onWorkerStart
- onWorkerStop
- onTimer
- onConnect
- onReceive
- onPacket
- onClose
- onTask
- onFinish
- onPipeMessage
- onWorkerError
- onManagerStart
- onManagerStop
- 高級特性
- 改變Worker進程的用戶/組
- 回調函數中的from_id和fd
- Buffer和EOF_Check的使用
- Worker與Reactor通信模式
- TCP-Keepalive死連接檢測
- TCP服務器心跳維持方案
- 多端口監聽的使用
- 捕獲Server運行期致命錯誤
- swoole_server的3種運行模式介紹
- swoole_server中對象的4層生命周期
- 在worker進程內監聽一個Server端口
- 常見問題
- 為什么不要send完后立即close
- 如何在回調函數中訪問外部的變量
- swoole_server中內存管理機制
- 是否可以共用1個redis或mysql連接
- 關于onConnect/onReceive/onClose順序
- 4種PHP回調函數風格
- 不同的Server程序實例間如何通信
- 壓力測試
- Nginx/Golang/Swoole/Node.js的性能對比
- 并發10萬TCP連接的測試
- 預定義常量
- php.ini選項
- Client
- 方法列表
- swoole_client::__construct
- swoole_client::set
- swoole_client::on
- swoole_client::connect
- swoole_client::isConnected
- swoole_client::getsockname
- swoole_client::getpeername
- swoole_client::send
- swoole_client::sendto
- swoole_client::sendfile
- swoole_client::recv
- swoole_client::close
- swoole_client::sleep
- swoole_client::wakeup
- 回調函數
- onConnect
- onError
- onReceive
- onClose
- 屬性列表
- swoole_client::$errCode
- swoole_client::$sock
- swoole_client::$reuse
- 并行
- swoole_client_select
- TCP客戶端異步連接
- SWOOLE_KEEP建立TCP長連接
- 常量
- Process
- 方法列表
- swoole_process::__construct
- swoole_process::start
- swoole_process::name
- swoole_process::exec
- swoole_process::write
- swoole_process::read
- swoole_process::useQueue
- swoole_process::push
- swoole_process::pop
- swoole_process::close
- swoole_process::exit
- swoole_process::kill
- swoole_process::wait
- swoole_process::daemon
- swoole_process::signal
- swoole_process::setaffinity
- AsyncIO
- 異步文件系統IO
- swoole_async_readfile
- swoole_async_writefile
- swoole_async_read
- swoole_async_write
- swoole_async_dns_lookup
- EventLoop
- swoole_event_add
- swoole_event_set
- swoole_event_del
- swoole_event_exit
- swoole_event_wait
- swoole_event_write
- 異步毫秒定時器
- swoole_timer_add
- swoole_timer_del
- swoole_timer_tick
- swoole_timer_after
- swoole_timer_clear
- 異步MySQL客戶端
- swoole_get_mysqli_sock
- swoole_mysql_query
- 異步Redis客戶端
- swoole_redis-
- swoole_redis-
- swoole_redis-
- swoole_redis-
- 異步Http/WebSocket客戶端
- swoole_http_client-
- swoole_http_client-
- swoole_http_client-
- swoole_http_client-
- swoole_http_client-
- swoole_http_client-
- swoole_http_client-
- Memory
- Lock
- swoole_lock::__construct
- swoole_lock::lock
- swoole_lock::trylock
- swoole_lock::unlock
- swoole_lock::lock_read
- swoole_lock::trylock_read
- Buffer
- swoole_buffer::__construct
- swoole_buffer::append
- swoole_buffer::substr
- swoole_buffer::clear
- swoole_buffer::expand
- swoole_buffer::write
- swoole_buffer::read
- Table
- swoole_table::__construct
- swoole_table::column
- swoole_table::create
- swoole_table::set
- swoole_table::incr
- swoole_table::decr
- swoole_table::get
- swoole_table::exist
- swoole_table::del
- swoole_table::lock
- swoole_table::unlock
- 常量列表
- Atomic
- swoole_atomic::__construct
- swoole_atomic::add
- swoole_atomic::sub
- swoole_atomic::get
- swoole_atomic::set
- swoole_atomic::cmpset
- HttpServer
- swoole_http_server
- swoole_http_server::on
- swoole_http_server::start
- swoole_http_server::setGlobal
- swoole_http_request
- swoole_http_request::$header
- swoole_http_request::$server
- swoole_http_request::$get
- swoole_http_request::$post
- swoole_http_request::$cookie
- swoole_http_request::$files
- swoole_http_request::rawContent
- swoole_http_response
- swoole_http_response::header
- swoole_http_response::cookie
- swoole_http_response::status
- swoole_http_response::gzip
- swoole_http_response::write
- swoole_http_response::sendfile
- swoole_http_response::end
- 常見問題
- CURL發送POST請求服務器端超時
- 使用Chrome訪問服務器會產生2次請求
- GET/POST請求的最大尺寸
- WebSocket
- 回調函數
- onHandShake
- onOpen
- onMessage
- 函數列表
- swoole_websocket_server::push
- 常見問題
- 如何判斷連接是否為WebSocket客戶端
- 預定義常量
- 高級
- 守護進程程序常用數據結構
- 隊列(Queue)
- Swoole的實現
- Reactor線程
- Manager進程
- Worker進程
- Reactor、Worker、Task的關系
- Task/Finish特性的用途
- C/C++開發者如何使用Swoole
- 在php-fpm或apache中使用swoole在php-fpm或apache中使用swoole
- Swoole異步與同步的選擇
- TCP/UDP壓測工具
- swoole服務器如何做到無人值守100
- MySQL的連接池、異步、斷線重連
- PHP中那些函數是同步阻塞的
- 使用tcmalloc提升swoole內存分配性能
- 使用tcmalloc提升swoole內存分配性能
- 其他
- Swoole社區
- 加入Swoole開發組
- 附錄:Linux信號列表
- 附錄:Linux錯誤信息(errno)列表
- 附錄:TCP連接的狀態
- 附錄:tcpdump抓包工具的使用
- 附錄:strace工具的使用
- 附錄:gdb工具的使用
- 附錄:編譯PHP擴展的相關工具
- 備用:已移除的歷史特性
- onMasterConnect
- onMasterClose
- 歷史:版本更新記錄
- v1.8.2
- v1.8.1
- v1.8.0
- v1.7.22
- v1.7.21
- v1.7.20
- v1.7.19
- v1.7.18
- v1.7.17
- v1.7.16
- v1.7.15
- v1.7.14
- v1.7.13
- v1.7.12
- v1.7.11
- v1.7.10
- v1.7.9
- v1.7.8
- v1.7.7
- v1.7.6
- v1.7.5
- v1.7
- v1.6
- v1.5
- Swoole-framework
- 開發指南
- 數據庫Model類
- model::get
- model::set
- model::del
- model::put
- model::gets
- model::sets
- model::dels
- model::all
- model::count
- model::exists
- model($model_name)
- table($table_name)
- Socket網絡開發
- TCP服務器
- Web服務器
- WebSocket
- Nginx+Swoole服務器配置
- Apache+Swoole服務器配置
- 安裝Swoole框架和擴展
- 數據庫ORM接口
- 控制器Controller
- 命名空間
- 文件上傳組件
- Redis
- Database
- Swoole\Database::insert
- 框架規范
- 目錄規范
- 自定義路由
- URL映射規則
- 示例程序
- 服務器端程序(Server)
- http_server
- app_server
- soa_server
- websocket_server
- comet_server
- 配置文件