[ 收藏 ] [ 简体中文 ]  
臺灣貨到付款、ATM、超商、信用卡PAYPAL付款,4-7個工作日送達,999元臺幣免運費   在線留言 商品價格為新臺幣 
首頁 電影 連續劇 音樂 圖書 女裝 男裝 童裝 內衣 百貨家居 包包 女鞋 男鞋 童鞋 計算機周邊

商品搜索

 类 别:
 关键字:
    

商品分类

  • 新类目

     管理
     投资理财
     经济
     社会科学
  • Linux多線程服務端編程 使用muduo C++網絡庫 圖書
    該商品所屬分類:圖書 -> 科技
    【市場價】
    696-1008
    【優惠價】
    435-630
    【作者】 陳碩 
    【出版社】電子工業出版社 
    【ISBN】9787121192821
    【折扣說明】一次購物滿999元台幣免運費+贈品
    一次購物滿2000元台幣95折+免運費+贈品
    一次購物滿3000元台幣92折+免運費+贈品
    一次購物滿4000元台幣88折+免運費+贈品
    【本期贈品】①優質無紡布環保袋,做工棒!②品牌簽字筆 ③品牌手帕紙巾
    版本正版全新電子版PDF檔
    您已选择: 正版全新
    溫馨提示:如果有多種選項,請先選擇再點擊加入購物車。
    *. 電子圖書價格是0.69折,例如了得網價格是100元,電子書pdf的價格則是69元。
    *. 購買電子書不支持貨到付款,購買時選擇atm或者超商、PayPal付款。付款後1-24小時內通過郵件傳輸給您。
    *. 如果收到的電子書不滿意,可以聯絡我們退款。謝謝。
    內容介紹



    出版社:電子工業出版社
    ISBN:9787121192821
    商品編碼:10030470594718

    品牌:文軒
    出版時間:2013-01-01
    代碼:128

    作者:陳碩

        
        
    "
    作  者:陳碩 著
    /
    定  價:128
    /
    出 版 社:電子工業出版社
    /
    出版日期:2013年01月01日
    /
    頁  數:616
    /
    裝  幀:平裝
    /
    ISBN:9787121192821
    /
    目錄
    ●第1部分 C++多線程繫統編程
    第1章 線程安全的對像生命期管理
    1.1 當析構函數遇到多線程
    1.1.1 線程安全的定義
    1.1.2 texLock與 texLockGuard
    1.1.3 一個線程安全的Counter示例
    1.2 對像的創建很簡單
    1.3 銷毀太難
    1.3.1 mutex不是辦法
    1.3.2 作為數據成員的mutex不能保護析構
    1.4 線程安全的Observer有多難
    1.5 原始指針有何不妥
    1.6 利器shared_ptr/weak_ptr
    1.7 插曲:繫統地避免各種指針錯誤
    1.8 應用到Observer上
    1.9 再論shared_ptr的線程安全
    1.10 shared_ptr技術與陷阱
    1.11 對像池
    1.11.1 enable_shared_from_this
    1.11.2 弱回調
    1.12 替代方案
    1.13 心得與小結
    1.14 Observer之謬
    第2章 線程同步精要
    2.1 互斥器(mutex)
    2.1.1 隻使用非遞歸的mutex
    2.1.2 死鎖
    2.2 條件變量(condition variable)
    2.3 不要用讀寫鎖和信號量
    2.4 封裝 texLock、 texLockGuard、Condition
    2.5 線程安全的Singleton實現
    2.6 sleep(3)不是同步原語
    2.7 歸納與總結
    2.8 借shared_ptr實現copy-on-write
    第3章 多線程服務器的適用場合與常用編程模型
    3.1 進程與線程
    3.2 單線程服務器的常用編程模型
    3.3 多線程服務器的常用編程模型
    3.3.1 one loop per thread
    3.3.2 線程池
    3.3.3 推薦模式
    3.4 進程間通信隻用TCP
    3.5 多線程服務器的適用場合
    3.5.1 必須用單線程的場合
    3.5.2 單線程程序的優缺點
    3.5.3 適用多線程程序的場景
    3.6 “多線程服務器的適用場合”例釋與答疑
    第4章 C++多線程繫統編程精要
    4.1 基本線程原語的選用
    4.2 C/C++繫統庫的線程安全性
    4.3 Linux上的線程標識
    4.4 線程的創建與銷毀的守則
    4.4.1 pthread_cancel與C++
    4.4.2 exit(3)在C++中不是線程安全的
    4.5 善用_thread關鍵字
    4.6 多線程與IO
    4.7 用RAII包裝文件描述符
    4.8 RAII與fork()
    4.9 多線程與fork()
    4.10 多線程與signal
    4.11 Linux新增繫統調用的啟示
    第5章 高效的多線程日志
    5.1 功能需求
    5.2 性能需求
    5.3 多線程異步日志
    5.4 其他方案
    第2部分 muduo網絡庫
    第6章 muduo網絡庫簡介
    6.1 由來
    6.2 安裝
    6.3 目錄結構
    6.3.1 代碼結構
    6.3.2 例子
    6.3.3 線程模型
    6.4 使用教程
    6.4.1 TCP網絡編程本質論
    6.4.2 echo服務的實現
    6.4.3 七步實現finger服務
    6.5 性能評測
    6.5.1 muduo與Boost.Asio、libevent2的吞吐量對比
    6.5.2 擊鼓傳花:對比muduo 與libevent2的事件處理效率
    6.5.3 muduo與Nginx的吞吐量對比
    6.5.4 muduo與ZeroMQ的延遲對比
    6.6 詳解muduo多線程模型
    6.6.1 數獨求解服務器
    6.6.2 常見的並發網絡服務程序設計方案
    第7章 muduo編程示例
    7.1 五個簡單TCP示例
    7.2 文件傳輸
    7.3 Boost.Asio的聊天服務器
    7.3.1 TCP分包
    7.3.2 消息格式
    7.3.3 編解碼器LengthHeaderCodec
    7.3.4 服務端的實現
    7.3.5 客戶端的實現
    7.4 muduo Buffer類的設計與使用
    7.4.1 muduo的IO模型
    7.4.2 為什麼non-blocking網絡編程中應用層buffer是必需的
    7.4.3 Buffer的功能需求
    7.4.4 Buffer的數據結構
    7.4.5 Buffer的操作
    7.4.6 其他設計方案
    7.4.7 性能是不是問題
    7.5 一種自動反射消息類型的Google Protobuf網絡傳輸方案
    7.5.1 網絡編程中使用Protobuf的兩個先決條件
    7.5.2 根據type name反射自動創建Message對像
    7.5.3 Protobuf傳輸格式
    7.6 在muduo中實現Protobuf編解碼器與消息分發器
    7.6.1 什麼是編解碼器(codec)
    7.6.2 實現ProtobufCodec
    7.6.3 消息分發器(dispatcher)有什麼用
    7.6.4 ProtobufCodec與ProtobufDispatcher的綜合運用
    7.6.5 ProtobufDispatcher的兩種實現
    7.6.6 ProtobufCodec和ProtobufDispatcher有何意義
    7.7 服務器的優選並發連接數
    7.7.1 為什麼要並發連接數
    7.7.2 在muduo中並發連接數
    7.8 定時器
    7.8.1 程序中的時間
    7.8.2 Linux時間函數
    7.8.3 muduo的定時器接口
    7.8.4 Boost.Asio Timer示例
    7.8.5 Java Netty示例
    7.9 測量兩臺機器的網絡延遲和時間差
    7.10 用timing wheel踢掉空閑連接
    7.10.1 timing wheel原理
    7.10.2 代碼實現與改進
    7.11 簡單的消息廣播服務
    7.12 “串並轉換”連接服務器及其自動化測試
    7.13 socks4a代理服務器
    7.13.1 TCP中繼器
    7.13.2 socks4a代理服務器
    7.13.3 N:1與1:N連接轉發
    7.14 短址服務
    7.15 與其他庫集成
    7.15.1 UDNS
    7.15.2 c-ares DNS
    7.15.3 curl
    7.15.4 更多
    第8章 muduo網絡庫設計與實現
    8.0 什麼都不做的EventLoop
    8.1 Reactor的關鍵結構
    8.1.1 Channel class
    8.1.2 Poller class
    8.1.3 EventLoop的改動
    8.2 TimerQueue定時器
    8.2.1 TimerQueue class
    8.2.2 EventLoop的改動
    8.3 EventLoop::runInLoop()函數
    8.3.1 提高TimerQueue的線程安全性
    8.3.2 EventLoopThread class
    8.4 實現TCP網絡庫
    8.5 TcpServer接受新連接
    8.5.1 TcpServer class
    8.5.2 TcpConnection class
    8.6 TcpConnection斷開連接
    8.7 Buffer讀取數據
    8.7.1 TcpConnection使用Buffer作為輸入緩衝
    8.7.2 Buffer::readFd()
    8.8 TcpConnection發送數據
    8.9 完善TcpConnection
    8.9.1 SIGPIPE
    8.9.2 TCP No Delay和TCP keepalive
    8.9.3 WriteCompleteCallback和HighWaterMarkCallback
    8.10 多線程TcpServer
    8.11 Connector
    8.12 TcpClient
    8.13 epoll
    8.14 測試程序一覽
    第3部分 工程實踐經驗談
    第9章 分布式繫統工程實踐
    9.1 我們在技術浪潮中的位置
    9.1.1 分布式繫統的本質困難
    9.1.2 分布式繫統是個險惡的問題
    9.2 分布式繫統的可靠性淺說
    9.2.1 分布式繫統的軟件不要求7×24可靠
    9.2.2 “能隨時重啟進程”作為程序設計目標
    9.3 分布式繫統中心跳協議的設計
    9.4 分布式繫統中的進程標識
    9.4.1 錯誤做法
    9.4.2 正確做法
    9.4.3 TCP協議的啟示
    9.5 構建易於維護的分布式程序
    9.6 為繫統演化做準備
    9.6.1 可擴展的消息格式
    9.6.2 反面教材:ICE的消息打包格式
    9.7 分布式程序的自動化回歸測試
    9.7.測試的能與不能
    9.7.2 分布式繫統測試的要點
    9.7.3 分布式繫統的抽像觀點
    9.7.4 一種自動化的回歸測試方案
    9.7.5 其他用處
    9.8 分布式繫統部署、監控與進程管理的幾重境界
    9.8.1 境界1:全手工操作
    9.8.2 境界2:使用零散的自動化腳本和第三方組件
    9.8.3 境界3:自制機群管理繫統,集中化配置
    9.8.4 境界4:機群管理與naming service結合
    第10章 C++編譯鏈接模型精要
    10.1 C 語言的編譯模型及其成因
    10.1.1 為什麼C語言需要預處理
    10.1.2 C語言的編譯模型
    10.2 C++的編譯模型
    10.2.1 單遍編譯
    10.2.2 前向聲明
    10.3 C++鏈接(linking)
    10.3.1 函數重載
    10.3.2 inline函數
    10.3.3 模板
    10.3.4 虛函數
    10.4 工程項目中頭文件的使用規則
    10.4.1 頭文件的害處
    10.4.2 頭文件的使用規則
    10.5 工程項目中庫文件的組織原則
    10.5.1 動態庫是有害的
    10.5.2 靜態庫也好不到哪兒去
    10.5.3 源碼編譯是王道
    第11章 反思C++面向對像與虛函數
    11.1 樸實的C++設計
    11.2 程序庫的二進制兼容性
    11.2.1 什麼是二進制兼容性
    11.2.2 有哪些情況會破壞庫的ABI
    11.2.3 哪些做法多半是安全的
    11.2.4 反面教材:COM
    11.2.5 解決辦法
    11.3 避免使用虛函數作為庫的接口
    11.3.1 C++程序庫的作者的生存環境
    11.3.2 虛函數作為庫的接口的兩大用途
    11.3.3 虛函數作為接口的弊端
    11.3.4 假如Linux繫統調用以COM接口方式實現
    11.3.5 Java是如何應對的
    11.4 動態庫接口的推薦做法
    11.5 以boost::function 和boost::bind 取代虛函數
    11.5.1 基本用途
    11.5.2 對程序庫的影響
    11.5.3 對面向對像程序設計的影響
    11.6 iostream的用途與局限
    11.6.1 stdio格式化輸入輸出的缺點
    11.6.2 iostream的設計初衷
    11.6.3 iostream與標準庫其他組件的交互
    11.6.4 iostream在使用方面的缺點
    11.6.5 iostream在設計方面的缺點
    11.6.6 一個300行的memory buffer output stream
    11.6.7 現實的C++程序如何做文件IO
    11.7 值語義與數據抽像
    11.7.1 什麼是值語義
    11.7.2 值語義與生命期
    11.7.3 值語義與標準庫
    11.7.4 值語義與C++語言
    11.7.5 什麼是數據抽像
    11.7.6 數據抽像所需的語言設施
    11.7.7 數據抽像的例子
    第12章 C++經驗談
    12.1 用異或來交換變量是錯誤的
    12.1.1 編譯器會分別生成什麼代碼
    12.1.2 為什麼短的代碼不一定快
    12.2 不要重載全局::operator new()
    12.2.1 內存管理的基本要求
    12.2.2 重載::operator new()的理由
    12.2.3 ::operator new()的兩種重載方式
    12.2.4 現實的開發環境
    12.2.5 重載::operator new()的困境
    12.2.6 解決辦法:替換malloc()
    12.2.7 為單獨的class重載::operator new()有問題嗎
    12.2.8 有必要自行定制內存分配器嗎
    12.3 帶符號整數的除法與餘數
    12.3.1 語言標準怎麼說
    12.3.2 C/C++編譯器的表現
    12.3.3 其他語言的規定
    12.3.4 腳本語言解釋器代碼
    12.3.5 硬件實現
    12.4測試中mock繫統調用
    12.4.1 繫統函數的依賴注入
    12.4.2 鏈接期墊片(link seam)
    12.5 慎用匿名namespace
    12.5.1 C語言的static關鍵字的兩種用法
    12.5.2 C++語言的static關鍵字的四種用法
    12.5.3 匿名namespace的不利之處
    12.5.4 替代辦法
    12.6 采用有利於版本管理的代碼格式
    12.6.1 對diff友好的代碼格式
    12.6.2 對grep友好的代碼風格
    12.6.3 一切為了效率
    12.7 再探std::string
    12.7.1 直接拷貝(eager copy)
    12.7.2 寫時復制(copy-on-write)
    12.7.3 短字符串優化(SSO)
    12.8 用STL algorithm輕松解決幾道算法面試題
    12.8.1 用next_permutation()生成排列與組合
    12.8.2 用unique()去除連續重復空白
    12.8.3 用{make,push,pop}_heap()實現多路歸並
    12.8.4 用partition()實現“重排數組,讓奇數位於偶數前面”
    12.8.5 用lower_bound()查找IP地址所屬的城市
    第4部分 附錄
    附錄A 談一談網絡編程學習經驗
    附錄B 從《C++ Primer(第4版)》入手學習C++
    附錄C 關於Boost的看法
    附錄D 關於TCP並發連接的幾個思考題與試驗
    內容簡介
    本書主要講述采用現代C++在x86-64Linux上編寫多線程TCP網絡服務程序的主流常規技術,重點講解一種適應性較強的多線程服務器的編程模型,即one loop per thread。這是在Linux下以native語言編寫用戶態高性能網絡程序成熟的模式,掌握之後可順利地開發各類常見的服務端網絡應用程序。本書以muduo網絡庫為例,講解這種編程模型的使用方法及注意事項。本書的宗旨是貴精不貴多。掌握兩種基本的同步原語就可以滿足各種多線程同步的功能需求,還能寫出更易用的同步設施。掌握一種進程間通信方式和一種多線程網絡編程模型就足以應對日常開發任務,編寫運行於公司內網環境的分布式服務繫統。



    "
     
    網友評論  我們期待著您對此商品發表評論
     
    相關商品
    【同作者商品】
    陳碩
      本網站暫時沒有該作者的其它商品。
    有該作者的商品通知您嗎?
    請選擇作者:
    陳碩
    您的Email地址
    在線留言 商品價格為新臺幣
    關於我們 送貨時間 安全付款 會員登入 加入會員 我的帳戶 網站聯盟
    DVD 連續劇 Copyright © 2024, Digital 了得網 Co., Ltd.
    返回頂部