o
    "jt                     @   s   d dl Z d dlZG dd dZedkrwedZdddZe D ]
\ZZe	ee q e
d	Zee e D ]\ZZee eksDJ q8e	d
d eed
 ed
dks[J ed
 eed eed eddksyJ dS dS )    Nc                   @   s@   e Zd ZdddZdd Zdd Zdd	 Zd
d ZdddZdS )KVClientlocalhost:2379c                 C   s$   | dr
|| _d S d| | _d S )Nzhttp://)
startswithendpoint)selfr    r   j/var/www/html/Deteccion_Ine/venv/lib/python3.10/site-packages/paddle/distributed/launch/utils/kv_client.py__init__   s   zKVClient.__init__c                 C   s\   | dr|nd| }| j | }ztj||d dd}|jdkr%W dS W dS    Y dS )N/T)datatimeoutfollow_redirects   F)r   r   httpxpoststatus_code)r   keyvalueurr   r   r   put   s   
zKVClient.putc                 C   sj   | dr|nd| }| j | }ztj|d dd}|jdkr,| }||dW S W dS    Y dS )Nr
   Tr   r   r    errorr   r   r   getr   json)r   r   r   r   retr   r   r   r   &   s   
zKVClient.getc                 C   s^   | dr|nd| }| j | }ztj|d dd}|jdkr&| W S W d S    Y dS )Nr
   Tr   r   r   r   r   r   r   r   r   r   r   
get_prefix3   s   

zKVClient.get_prefixc                 C   sZ   | dr|nd| }| j | }ztj|d dd}|jdkr$W dS W dS    Y dS )Nr
   Tr   r   F)r   r   r   deleter   r   r   r   r   r    =   s   
zKVClient.delete   c                 C   s>   t   | }t   |k r| ddkrdS t   |k sd S d S )N/healthyokT)timer   )r   r   endr   r   r   wait_server_readyI   s
   zKVClient.wait_server_readyN)r   )r!   )	__name__
__module____qualname__r	   r   r   r   r    r&   r   r   r   r   r      s    

r   __main__zhttp://localhost:8090Zrank1Zrank2)z
/workers/1z
/workers/2z/workersr   r   z/keyr"   r#   )r$   r   r   r'   clir   itemskvr   r   xprintr   r    r   r   r   r   <module>   s*   <


