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

[NEW EXAMPLE] ZooKeeper - Client connection #18

Open
ainzzorl opened this issue Jul 21, 2021 · 1 comment
Open

[NEW EXAMPLE] ZooKeeper - Client connection #18

ainzzorl opened this issue Jul 21, 2021 · 1 comment
Labels
cooldown new example New example proposal

Comments

@ainzzorl
Copy link
Owner

General

  • Project name: ZooKeeper
  • Example name: Managing the socket i/o for the client in ZooKeeper.
  • Project home page: https://github.com/apache/zookeeper
  • Programming language(s): Java
  • Frameworks, libraries used: N/A

Description

ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services.

ZooKeeper has a smart client that:

  • maintains a list of available servers to connect to and "transparently" switches servers it is connected to as needed.
  • does smart error handling.
  • generates heart beats.
  • has an event loop.

Links

https://github.com/apache/zookeeper/blob/c583a6e79654359b5daad5093d1730e370d3b75b/zookeeper-server/src/main/java/org/apache/zookeeper/ClientCnxn.java

Tests: https://github.com/apache/zookeeper/blob/c583a6e79654359b5daad5093d1730e370d3b75b/zookeeper-server/src/test/java/org/apache/zookeeper/ClientRequestTimeoutTest.java https://github.com/apache/zookeeper/blob/c583a6e79654359b5daad5093d1730e370d3b75b/zookeeper-server/src/test/java/org/apache/zookeeper/ClientReconnectTest.java https://github.com/apache/zookeeper/blob/c583a6e79654359b5daad5093d1730e370d3b75b/zookeeper-server/src/test/java/org/apache/zookeeper/ClientCnxnSocketFragilityTest.java

What makes it interesting

  • Smart client.
  • Non-trivial error handling.
  • Event loop.

Related work

No.

Other

N/A

@ainzzorl ainzzorl added the new example New example proposal label Jul 21, 2021
@ainzzorl
Copy link
Owner Author

ainzzorl commented Sep 7, 2021

This is interesting, but too complex. Moving it to cooldown for the time being.

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

No branches or pull requests

1 participant