Nanoserv is a sockets daemon toolkit for PHP 5.1+. It is object oriented and features native support for TCP with SSL/TLS and UDP connections, multiplexing and forking listeners, handlers for raw connections, line input, HTTP, SMTP, XML-RPC, Syslog, transparent inter-process communications with forked handlers, and more.
|Tags||Software Development Libraries php classes Networking|
Release Notes: This release adds an asynchronous HTTP server class (see handlers/HTTP/Server), and has speed optimizations in the core and HTTP. It fixes stream write buffers and Socket::Write_From_Stream(), delayed handling of outgoing connections timeouts, and a descriptor leak when __destruct() was delayed after peer disconnect. "make install" now works correctly on OS X.
Release Notes: This release adds support for Unix sockets, write buffer optimizations, a telnet protocol handler, JSON_RPC based server classes, better handling of TLS/SSL crypto errors, and stream write buffers. It fixes the XML-RPC server so that non-typed parameters are cast to strings, SSL/TLS handshake timeout with high latency connections, a SOAP handler ReflectionClass error in the namespace build, compatibility problems in configure and Makefile, and "self::" callbacks for PHP versions lower than 5.3.
Release Notes: This release adds the method Socket::Block_Reads() to help implement flow control mechanisms, and fixes a bug when timers could be delayed by a long call to select().
Release Notes: New features include optional compression in the HTTP server, updated examples, a method Core::Get_Timers() that returns all registered and active timers, and microsecond precision timers. Bugfixes include a missing carriage return + line feed in handlers/HTTP/Server, a SimpleXMLElement error in XML-RPC server with namespaces enabled, PHP open tags (short -> long) in example scripts, and a bad filename in handlers/base_child.phph (namespaces build).
Release Notes: This release uses a preprocessor to build with or without namespaces support. Core and handlers now throw exceptions on fatal errors. This release adds block_reads to the Socket class to enable flow control. Socket::Set_Blocking() now returns a bool (true = success). A DHCP Server handler has been added. Many small bugs in HTTP and XML_RPC servers have been fixed.