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

Replace zerorpc with normal HTTP Rest API #404

Closed
LefterisJP opened this issue Jul 11, 2019 · 4 comments · Fixed by #526
Closed

Replace zerorpc with normal HTTP Rest API #404

LefterisJP opened this issue Jul 11, 2019 · 4 comments · Fixed by #526

Comments

@LefterisJP
Copy link
Member

Problem Definition

Zerorpc is a pain in the ass the way Rotkehlchen has evolved.

  1. We need to have a hack in long running API calls to make sure that gevent does at least 1 context switch every 10 seconds to avoid the dreaded heartbeat error: https://github.com/rotkehlchenio/rotkehlchen/blob/605d56edf46d20d090e4d3dad94becd88c8749a5/rotkehlchen/accounting/accountant.py#L397

  2. The module used both in python but more importantly in node for zerorpc is outdated and not maintained. Upgrading to a new electron version becomes harder and harder since the package needs to be forked and maintained by me to do so.

  3. Dependency to ZeroMQ and ZeroRPC goes away

  4. Some bugs that pop up are suspected to be due to the way zerorpc handles communication between backend and client.

Task

  1. Remove zerorpc server from the backend. Replace with a normal rest HTTP API server.

  2. Remove zerorpc client from the frontend side. Replace with simple RPC queries.

@kelsos
Copy link
Member

kelsos commented Jul 15, 2019

@LefterisJP are we doing this for v1.0.0 or after the vue rewrite? both should be viable since we have extracted the functionality to the service.

@LefterisJP
Copy link
Member Author

100% after.

@LefterisJP
Copy link
Member Author

Not completely done. With #526 all of the backend work is done but the replacing of the front-end zerorpc client with an http axios client is still being done in: #573

@LefterisJP
Copy link
Member Author

Done!

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

Successfully merging a pull request may close this issue.

2 participants