Where communities thrive

HPROSE is short for High Performance Remote Object Service Engine. It's a serialize and RPC library, the serialize library of hprose is faster, smaller and more powerful than msgpack, the RPC library is faster, easier and more powerful than thrift.

People

Repo info

Activity

Ingwie Phoenix

@IngwiePhoenix

ahh, good to know.

Please let me know when you introduced that change since I will have to update my dependencies then

小马哥

@andot

Maybe I will add a full workerman implementation in hprose-php in the future. :smile:

Ingwie Phoenix

@IngwiePhoenix

Ahh. Feel free to go off the code I wrote. I am running the latest Workerman and it still works as expected. :)

Though you will have a massive advantage - you can actually understand the docs…i can’t. I have a friend that speaks chinese but when I showed them to her she was all confused. XD

Now, the nodejs version is already complete for this feature. but the php version is not ready.

Ingwie Phoenix

@IngwiePhoenix

What does this feature do?

小马哥

@andot

Less connections, more concurrent requests/responses.

Ingwie Phoenix

@IngwiePhoenix

Sweet! I hope you can bring this to PHP soon, this will very likely help me.

小马哥

@andot

I will add it to PHP as soon as possible, and it will base on swoole or workerman in php version.

Ingwie Phoenix

@IngwiePhoenix

Hopefuly workerman…its really great. :)

So far, I have had not a single problem with Workerman - all the ones I had were my own code. x)

Ingwie Phoenix

@IngwiePhoenix

So here is FeatherWeight: https://github.com/DragonsInn/FeatherWeightIt is a cache that can be accessed through hprose and is also serialized and deserialized using hprose itself, to persist as much data as possible. Its not done yet, but I thought it’d be nice to show you! :)

小马哥

@andot

cool! :cool:

Ingwie Phoenix

@IngwiePhoenix

I hope to develop it further. It could be osmething nice to show off as one of the use-cases of hprose. :)

1441404586948 - Origin: Worker (PID 70307)
[Error] TypeError: undefined is not a function
at SocketClient.invoke (/Users/Ingwie/Work/BIRD3/node_modules/hprose/lib/client/Client.js:845:22)
at Object.<anonymous> (/Users/Ingwie/Work/BIRD3/node-lib/front-end/php_handler.js:132:28)
at next (/Users/Ingwie/Work/BIRD3/node_modules/ginga/index.js:250:26)
at Object.PHPMiddleware.defs.invok (/Users/Ingwie/Work/BIRD3/node-lib/front-end/php_handler.js:26:20)
at next (/Users/Ingwie/Work/BIRD3/node_modules/ginga/index.js:259:14)
at Object.PHPMiddleware.defs.pre (/Users/Ingwie/Work/BIRD3/node-lib/front-end/php_handler.js:23:20)
at next (/Users/Ingwie/Work/BIRD3/node_modules/ginga/index.js:259:14)
at Object.(anonymous function) [as preprocess] (/Users/Ingwie/Work/BIRD3/node_modules/ginga/index.js:265:7)
at Object.<anonymous> (/Users/Ingwie/Work/BIRD3/node-lib/front-end/php_handler.js:130:18)
at next (/Users/Ingwie/Work/BIRD3/node_modules/ginga/index.js:259:14)

Ahh thanks :) I managed to pick up the changes from the source code, but the link will be helpful still. Thank you

Ingwie Phoenix

@IngwiePhoenix

I just noticed that inside hprose for node, there is no actual way of getting a function list. I used HproseTcpClient to install a client connection, and wanted to use that to peek at the currently exported function list to verify that I did things right. Is there a way to send just 'z' to the hprose instance without having to use a separate net client?

Ingwie Phoenix

@IngwiePhoenix

Good news, I got it working what i wanted :)

I used nc tool to send the z to hprose, it displayed the function list

Hey there @andot! I am currently working on open-sourcing the WebServer system that my project uses, that allows it to use PHP applications inside NodeJS. But I am running into one very, very strange behaviour.

Here are two objects. The first one is a context object that was created off a request by Chrome.