Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Separating network layer from protocol/processing #2

Open
rohitjoshi opened this issue Jul 1, 2018 · 10 comments
Open

Separating network layer from protocol/processing #2

rohitjoshi opened this issue Jul 1, 2018 · 10 comments

Comments

@rohitjoshi
Copy link

I would recommend creating a separate protocol/processing layer from network layer which will allow for use in different languages and application stacks.
e.g. I would like to use TiKV in OpenResty (Nginx + Lua) stack where Nginx async socket needs to be used for network communication.

@doublex
Copy link

doublex commented Jul 4, 2018

We would like to use TiKV as backend for Sphinx/Manticore fulltext search.

@siddontang
Copy link
Contributor

Thnaks @rohitjoshi @doublex

But now we have no time to build a C client, we want to build a Rust client at first. then we can provide a C API wrapping Rust, maybe. /cc @Hoverbear

If we find the way that C wraps Rust can't work, we will try to provide a pure C API.

@doublex
Copy link

doublex commented Jul 4, 2018

@siddontang
Yes I understand. And creating a good API is not easy.
TiKV is too tempting...

@rohitjoshi
Copy link
Author

As long as network layer is separate from protocol/processing layer, it would be great 👍

@rohitjoshi
Copy link
Author

@siddontang do we have any timeline on the Rust client API?

@siddontang
Copy link
Contributor

@rohitjoshi

We may plan to start it on Q3. maybe September.

@rohitjoshi
Copy link
Author

Any update?

@Hoverbear
Copy link

Hi @rohitjoshi you can see that the Rust Client is entered it's final RFC phase: tikv/rfcs#7

Work has begun on it, I expect it will be a bit of time before we can expose a C interface.

@rohitjoshi
Copy link
Author

@Hoverbear Great start. Infact, we should be able to expose 'C' binding from Rust client.

@Hoverbear
Copy link

@rohitjoshi Indeed that is the plan! We haven't started formally speccing the C bindings yet, but if you'd like to help us review that RFC when the time comes we'd certainly appreciate your input and time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants