peter-lawrey / TransFIX

Faster FIX engine.
http://chronicle.software/products/transfix/
GNU Lesser General Public License v3.0
87 stars 50 forks source link

[question] fix transport #4

Closed lburgazzoli closed 10 years ago

lburgazzoli commented 10 years ago

Is there any plan for fix protocol transport implementation?

peter-lawrey commented 10 years ago

Yes. Initially tcp, later udp. Possibly a combination for reliable multicast. On 11 Dec 2013 10:16, "lburgazzoli" notifications@github.com wrote:

Is there any plan for fix protocol transport implementation?

— Reply to this email directly or view it on GitHubhttps://github.com/OpenHFT/TransFIX/issues/4 .

lburgazzoli commented 10 years ago

Do you plan to write your own stack or to rely on 3th party frameworks? (netty, mina, etc)

peter-lawrey commented 10 years ago

Likely to offer both options. Not sure which to do first. I imagine using netty rather than mina. I also plan to get some solarflare cards with kernel bypass and develop a low latency library for java. On 11 Dec 2013 10:55, "lburgazzoli" notifications@github.com wrote:

Do you plan to write your own stack or to rely on 3th party frameworks? (netty, mina, etc)

— Reply to this email directly or view it on GitHubhttps://github.com/OpenHFT/TransFIX/issues/4#issuecomment-30310868 .

lburgazzoli commented 10 years ago

Great, so TransFIX will expose some APIs and some concrete implementations. Do you already have some thoughts about the APIs?

peter-lawrey commented 10 years ago

The main thought about the APIs is that data structures should be reusable. It should be possible to parse and produce any amount of messages with minimal garbage. (Less than one byte per message.) The apis should read like natural asynchronous method calls (don't return anything) On 11 Dec 2013 11:40, "lburgazzoli" notifications@github.com wrote:

Great, so TransFIX will expose some APIs and some concrete implementations. Do you already have some thoughts about the APIs?

— Reply to this email directly or view it on GitHubhttps://github.com/OpenHFT/TransFIX/issues/4#issuecomment-30313524 .

lburgazzoli commented 10 years ago

I've uploaded a simple and really dummy Netty4 based Encoder/Decoder:

https://github.com/lburgazzoli/lb-quickfixj/tree/master/quickfixj-transport-netty/src/main/java/com/github/lburgazzoli/quickfixj/transport/netty/codec

I can add it to TransFIX if you like.

peter-lawrey commented 10 years ago

I have started using sandbox areas in each project. This is a place to merge in changes more freely, with the option to migrate those changes to the main area once those changes are stable.

e.g. chronicle I am working in "chronicle-sandbox" with fixes going into "chronicle"

You can check stuff in for fix-sandbox and this can be migrated to fix once we have unit tests for it.

On 1 January 2014 20:47, lburgazzoli notifications@github.com wrote:

I've uploaded a simple and really dummy Netty4 based Encoder/Decoder:

https://github.com/lburgazzoli/lb-quickfixj/tree/master/quickfixj-transport-netty/src/main/java/com/github/lburgazzoli/quickfixj/transport/netty/codec

I can add it to TransFIX if you like.

— Reply to this email directly or view it on GitHubhttps://github.com/OpenHFT/TransFIX/issues/4#issuecomment-31429912 .