[GitHub] [zookeeper] eolivelli commented on a change in pull request #1073: ZOOKEEPER-3529: add a new doc: zookeeperUseCases.md

2019-09-14 Thread GitBox
eolivelli commented on a change in pull request #1073: ZOOKEEPER-3529: add a 
new doc: zookeeperUseCases.md
URL: https://github.com/apache/zookeeper/pull/1073#discussion_r324417198
 
 

 ##
 File path: zookeeper-docs/src/main/resources/markdown/zookeeperUseCases.md
 ##
 @@ -0,0 +1,377 @@
+
+
+# ZooKeeper Use Cases
+
+- Applications and organizations using ZooKeeper include (alphabetically)[1].
+- If your use case wants to be listed here. Please do not hesitate, submit a 
pull request or write an email to **d...@zookeeper.apache.org**,
+  and then, your use case will be included.
+
+
+## Free Software Projects
+
+### [AdroitLogic UltraESB](http://adroitlogic.org/)
+  - Uses ZooKeeper to implement node coordination, in clustering support. This 
allows the management of the complete cluster,
+  or any specific node - from any other node connected via JMX. A Cluster wide 
command framework developed on top of the
+  ZooKeeper coordination allows commands that fail on some nodes to be retried 
etc. We also support the automated graceful
+  round-robin-restart of a complete cluster of nodes using the same framework.
+
+### [Akka](http://akka.io/)
+  - Akka is the platform for the next generation event-driven, scalable and 
fault-tolerant architectures on the JVM.
+  Or: Akka is a toolkit and runtime for building highly concurrent, 
distributed, and fault tolerant event-driven applications on the JVM.
+
+### [Eclipse Communication Framework](http://www.eclipse.org/ecf) 
+  - The Eclipse ECF project provides an implementation of its Abstract 
Discovery services using Zookeeper. ECF itself
+  is used in many projects providing base functionallity for communication, 
all based on OSGi.
+
+### [Eclipse Gyrex](http://www.eclipse.org/gyrex)
+  - The Eclipse Gyrex project provides a platform for building your own Java 
OSGi based clouds. 
+  - ZooKeeper is used as the core cloud component for node membership and 
management, coordination of jobs executing among workers,
+  a lock service and a simple queue service and a lot more.
+
+### [GoldenOrb](http://www.goldenorbos.org/)
+  - massive-scale Graph analysis
+
+### [Juju](https://juju.ubuntu.com/)
+  - Service deployment and orchestration framework, formerly called Ensemble.
+
+### [Katta](http://katta.sourceforge.net/)
+  - Katta serves distributed Lucene indexes in a grid environment.
+  - Zookeeper is used for node, master and index management in the grid.
+
+### [KeptCollections](https://github.com/anthonyu/KeptCollections)
+  - KeptCollections is a library of drop-in replacements for the data 
structures in the Java Collections framework.
+  - KeptCollections uses Apache ZooKeeper as a backing store, thus making its 
data structures distributed and scalable.
+
+### [Neo4j](https://neo4j.com/)
+  - Neo4j is a Graph Database. It's a disk based, ACID compliant transactional 
storage engine for big graphs and fast graph traversals,
+using external indicies like Lucene/Solr for global searches.
+  - We use ZooKeeper in the Neo4j High Availability components for 
write-master election,
+read slave coordination and other cool stuff. ZooKeeper is a great and 
focused project - we like!
+
+### [Norbert](http://sna-projects.com/norbert)
+  - Partitioned routing and cluster management.
+
+### [OpenStack Nova](http://www.openstack.org/)
+  - OpenStack  is an open source software stack for the creation and 
management of private and public clouds. It is designed to manage pools of 
compute,
+storage, and networking resources in data centers, allowing the management 
of these resources through a consolidated dashboard and flexible APIs.
+  - Nova is the software component in OpenStack, which is responsible for 
managing the compute resources, where virtual machines (VMs) are hosted in a 
cloud computing environment. It is also known as the OpenStack Compute Service. 
OpenStack
+Nova provides a cloud computing fabric controller, supporting a wide 
variety of virtualization technologies such as KVM, Xen, VMware, and many more. 
In addition to its native API, it also includes compatibility with Amazon EC2 
and S3 APIs.
+Nova depends on up-to-date information about the availability of the 
various compute nodes and services that run on them, for its proper operation. 
For example, the virtual machine placement operation requires to know the 
currently available compute nodes and their current state.
+Nova uses ZooKeeper to implement an efficient membership service, which 
monitors the availability of registered services. This is done through the 
ZooKeeper ServiceGroup Driver, which works by using ZooKeeper's ephemeral 
znodes. Each service registers by creating an ephemeral znode on startup. Now, 
when the service dies, ZooKeeper will automatically delete the corresponding 
ephemeral znode. The removal of this znode can be used to trigger the 
corresponding recovery logic.
+For example, when a compute node crashes, the nova-compute 

[GitHub] [zookeeper] eolivelli commented on a change in pull request #1073: ZOOKEEPER-3529: add a new doc: zookeeperUseCases.md

2019-09-13 Thread GitBox
eolivelli commented on a change in pull request #1073: ZOOKEEPER-3529: add a 
new doc: zookeeperUseCases.md
URL: https://github.com/apache/zookeeper/pull/1073#discussion_r324263731
 
 

 ##
 File path: zookeeper-docs/src/main/resources/markdown/zookeeperUseCases.md
 ##
 @@ -0,0 +1,377 @@
+
+
+# ZooKeeper Use Cases
+
+- Applications and organizations using ZooKeeper include (alphabetically)[1].
+- If your use case wants to be listed here. Please do not hesitate, submit a 
pull request or write an email to **d...@zookeeper.apache.org**,
+  and then, your use case will be included.
+
+
+## Free Software Projects
+
+### [AdroitLogic UltraESB](http://adroitlogic.org/)
+  - Uses ZooKeeper to implement node coordination, in clustering support. This 
allows the management of the complete cluster,
+  or any specific node - from any other node connected via JMX. A Cluster wide 
command framework developed on top of the
+  ZooKeeper coordination allows commands that fail on some nodes to be retried 
etc. We also support the automated graceful
+  round-robin-restart of a complete cluster of nodes using the same framework.
+
+### [Akka](http://akka.io/)
+  - Akka is the platform for the next generation event-driven, scalable and 
fault-tolerant architectures on the JVM.
+  Or: Akka is a toolkit and runtime for building highly concurrent, 
distributed, and fault tolerant event-driven applications on the JVM.
+
+### [Eclipse Communication Framework](http://www.eclipse.org/ecf) 
+  - The Eclipse ECF project provides an implementation of its Abstract 
Discovery services using Zookeeper. ECF itself
+  is used in many projects providing base functionallity for communication, 
all based on OSGi.
+
+### [Eclipse Gyrex](http://www.eclipse.org/gyrex)
+  - The Eclipse Gyrex project provides a platform for building your own Java 
OSGi based clouds. 
+  - ZooKeeper is used as the core cloud component for node membership and 
management, coordination of jobs executing among workers,
+  a lock service and a simple queue service and a lot more.
+
+### [GoldenOrb](http://www.goldenorbos.org/)
+  - massive-scale Graph analysis
+
+### [Juju](https://juju.ubuntu.com/)
+  - Service deployment and orchestration framework, formerly called Ensemble.
+
+### [Katta](http://katta.sourceforge.net/)
+  - Katta serves distributed Lucene indexes in a grid environment.
+  - Zookeeper is used for node, master and index management in the grid.
+
+### [KeptCollections](https://github.com/anthonyu/KeptCollections)
+  - KeptCollections is a library of drop-in replacements for the data 
structures in the Java Collections framework.
+  - KeptCollections uses Apache ZooKeeper as a backing store, thus making its 
data structures distributed and scalable.
+
+### [Neo4j](https://neo4j.com/)
+  - Neo4j is a Graph Database. It's a disk based, ACID compliant transactional 
storage engine for big graphs and fast graph traversals,
+using external indicies like Lucene/Solr for global searches.
+  - We use ZooKeeper in the Neo4j High Availability components for 
write-master election,
+read slave coordination and other cool stuff. ZooKeeper is a great and 
focused project - we like!
+
+### [Norbert](http://sna-projects.com/norbert)
+  - Partitioned routing and cluster management.
+
+### [OpenStack Nova](http://www.openstack.org/)
+  - OpenStack  is an open source software stack for the creation and 
management of private and public clouds. It is designed to manage pools of 
compute,
+storage, and networking resources in data centers, allowing the management 
of these resources through a consolidated dashboard and flexible APIs.
+  - Nova is the software component in OpenStack, which is responsible for 
managing the compute resources, where virtual machines (VMs) are hosted in a 
cloud computing environment. It is also known as the OpenStack Compute Service. 
OpenStack
+Nova provides a cloud computing fabric controller, supporting a wide 
variety of virtualization technologies such as KVM, Xen, VMware, and many more. 
In addition to its native API, it also includes compatibility with Amazon EC2 
and S3 APIs.
+Nova depends on up-to-date information about the availability of the 
various compute nodes and services that run on them, for its proper operation. 
For example, the virtual machine placement operation requires to know the 
currently available compute nodes and their current state.
+Nova uses ZooKeeper to implement an efficient membership service, which 
monitors the availability of registered services. This is done through the 
ZooKeeper ServiceGroup Driver, which works by using ZooKeeper's ephemeral 
znodes. Each service registers by creating an ephemeral znode on startup. Now, 
when the service dies, ZooKeeper will automatically delete the corresponding 
ephemeral znode. The removal of this znode can be used to trigger the 
corresponding recovery logic.
+For example, when a compute node crashes, the nova-compute