You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@thrift.apache.org by "Nick Jones (JIRA)" <ji...@apache.org> on 2010/08/12 00:14:15 UTC
[jira] Updated: (THRIFT-778) PHP socket listening server
[ https://issues.apache.org/jira/browse/THRIFT-778?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Nick Jones updated THRIFT-778:
------------------------------
Attachment: add-server-support.patch
I'm attaching a patch which adds TServerTransport/TServerSocket, along with a generic TServer and TSimpleServer implementation. This is mostly based on the C# and Java implementations.
Example usage:
{code}
$processor = new TestProcessor(new XXXHandler());
$transport = new TServerSocket();
$transportFactory = new TTransportFactory();
$protocolFactory = new TBinaryProtocolFactory();
$server = new TSimpleServer($processor, $transport, $transportFactory, $transportFactory, $protocolFactory, $protocolFactory);
$server->serve();
{code}
Obviously the PHP library can't implement a TThreadedServer, so the next best alternative is to use a select call on a pool of sockets, like in the original patch in this ticket. I may look into implementing that in a slightly nicer fashion in the near future.
> PHP socket listening server
> ---------------------------
>
> Key: THRIFT-778
> URL: https://issues.apache.org/jira/browse/THRIFT-778
> Project: Thrift
> Issue Type: New Feature
> Components: Library (PHP)
> Reporter: Jan Dolecek
> Priority: Minor
> Attachments: add-server-support.patch
>
> Original Estimate: 0.5h
> Remaining Estimate: 0.5h
>
> I just downloaded Thrift and I need to create servers in PHP, which will
> listen on unix or tcp sockets. So I've implemented it and attaching the
> patch.
> I hope it could be helpful and/or useful for someone else too.
> Here is example:
> $socket = new TServerSocket("unix://$unixPath", -1);
> $socket->listen();
> while(true) $socket->select($processor);
> Link: http://helemik.cz/juzna/opensource/php/thrift/php-server.patch
> Samples: http://helemik.cz/juzna/opensource/php/thrift/server-sample.zip
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.