<thead id="fflbj"><font id="fflbj"><cite id="fflbj"></cite></font></thead>
    <progress id="fflbj"><thead id="fflbj"><font id="fflbj"></font></thead></progress>

            課程目錄:Linux Network Programming培訓
            4401 人關注
            (78637/99817)
            課程大綱:

              Linux Network Programming培訓

             

             

             

            Sockets
            Creating datagram sockets
            Receiving and sending data
            Creating and accepting TCP connections
            Closing sockets
            Handling errors
            Handling more than one client in a simple way
            Prefork model, as found in Apache
            Forking a new process per client
            Cleaning up after finished processes
            Threads
            Inetd, systemd units
            Waiting for data
            Blocking sockets
            Non-blocking sockets and select
            Select as a way to wait for "any of these sockets"
            Organizing reads and writes
            Dealing with short reads and writes
            Reading up to a delimiter
            Pipelined requests
            Application-level buffers
            Event-driven architecture
            Using select for multiplexing all client connections in one thread
            State machines
            Callback hell
            Event libraries
            "Green" threads
            Problem of 10000 connections
            Problems with prefork model and select-based loop
            poll as an alternative to select
            Realtime signals and why you shouldn't use them
            Epoll (linux) and kqueue (BSD)
            Why and when epoll and kqueue are faster than poll/select
            Timeouts and timers
            SIGALARM
            Timeout as a select argument
            A simple case of all-equal timeouts
            Priority queue as an abstract data stracture
            Binary heap as a priority queue implementation
            Timer wheel
            timerfd
            Integration with the operating system
            Traditional daemons
            Systemd socket activation
            Logging
            Handling signals
            Performance and scalability optimizations
            Choosing the right architecture
            Setting socket options

            538在线视频二三区视视频