Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 156057|Respuesta: 37

[Programa de consola] Implementación de bloqueo distribuido de .net/c# Zookeeper [Código fuente]

[Copiar enlace]
Publicado en 4/4/2018 17:10:42 | | | |
Primero, los siguientes dos artículos sobre .net/c# Zookeeper distribuyeron cerraduras:

El inicio de sesión del hipervínculo es visible.

El inicio de sesión del hipervínculo es visible.

¡De hecho, los dos artículos anteriores son incorrectos! ¡Completamente engañosos a los desarrolladores de programación!


Acerca deTutorial de instalación de Zookeeper:

【Combate práctico】Tutorial de instalación de Zookeeper en entorno Windows
http://www.itsvse.com/thread-4603-1-1.html
(Fuente: Architect_Programmer)

El principio de implementación del bloqueo distribuido Zookeeper se explica en términos sencillos:

1: Colocar todos los nodos hijos bajo la taquilla

2: Todos los subnodos están ordenados, aquí hay dos situaciones

Si tu nodo tiene el número de serie más pequeño, entonces se considera que el cliente ha obtenido el bloqueo. ¡Puedes hacer lo tuyo!
Si tu nodo no es el número de serie más pequeño, el nodo que escucha al nodo más pequeño no es el anterior que es más pequeño que tú!! ¡Presta atención aquí!
(¡Porque tu nodo anterior puede que se agote y libere el bloqueo!) )

3: Esperar la notificación del Cuidador y luego repetir la operación de 2, extraer todos los nodos, ordenarlos y juzgar si eres el nodo más pequeño............

Después de conocer el principio, veamos por qué las dos introducciones principales del artículo son incorrectas.





Mirando el ejemplo del orden en el artículo, parece correcto, ¡y el resultado tras la ejecución también es correcto! Sin embargo, si lo pruebas varias veces, sabrás que el código del artículo es completamente incorrecto!!!

Así que, conociendo el principio, ¡vamos a escribirlo nosotros mismos! En fin, no es la primera vez que me pilla el código en Internet.

Aquí tienes el gif correcto:



Código de llamada:



La versión ZooKeeperNet.dll utilizada es la 3.4.6.1

[Combate real] ASP.NET Core está basado en la venta flash de candados distribuidos de Redis
https://www.itsvse.com/thread-9397-1-1.html

Finalmente, adjunta el código fuente:

Turistas, si queréis ver el contenido oculto de esta publicación, por favorRespuesta





Anterior:Resuelve el problema de "Usar una contraseña en la interfaz de línea de comandos... "
Próximo:jquery obtiene el tipo de etiqueta del objeto jquery
Publicado en 6/5/2019 18:15:55 |
LZ, miré el código fuente y no gestionaba operaciones de tiempo de espera de zk como liberar bloqueos, ya sea por el mecanismo temporal de nodos ZK. Si el zk se desconecta, el nodo se elimina automáticamente.
Publicado en 3/7/2019 11:16:25 |
Error de ejecución: Lanza una excepción de tipo ZooKeeperNet.KeeperException+ConnectionLossException.
Publicado en 6/5/2019 18:17:02 |
En el caso de un solo zk, puede que no haya problema. Si ZK es un clúster, ¿habrá problemas con el rendimiento de 3 actualizaciones sincronizadas de datos zk?
Publicado en 8/4/2018 16:32:38 |
Gracias por compartir, vamos a echar un vistazo
Publicado en 1/6/2018 12:01:39 |
Gracias por compartir
Publicado en 5/7/2018 12:31:02 |
Buen post
Publicado en 10/7/2018 12:11:14 |
Mark
Mark
Mark
Mark
Publicado en 11/7/2018 15:47:20 |
Sí, estamos trabajando en un esquema de implementación de bloqueo de distribución
Publicado en 1/8/2018 12:52:23 |
Vamos a echar un vistazo
Publicado en 28/10/2018 19:55:23 |
Aprende a aprender
Publicado en 31/10/2018 16:52:15 |
Estudiando, gracias
Publicado en 23/11/2018 10:24:32 |
No está mal, muy bien
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com