Escriba bibliotecas en lugar de servicios (si es posible)





El servicio implica costos administrativos constantes que debe soportar el proveedor del servicio. Una biblioteca diseñada adecuadamente transfiere todos estos costos a sus usuarios.



Esto significa que la biblioteca (si su uso es posible) puede proporcionar al usuario la misma funcionalidad, mientras que le cuesta al desarrollador menos que el servicio.



Por lo general, la centralización de dichos costos administrativos se considera una ventaja de servicio.

La gente dice: "Es fácil trabajar con los servicios porque se pueden actualizar de forma centralizada para que los usuarios lentos no arruinen la vida de los demás".



Pero esto implica que los usuarios que no actualizan a tiempo pueden influir en todos los demás. Si un usuario no puede influir negativamente en otros usuarios, no nos importa qué tan rápido se actualicen los usuarios individuales; solo se dañan a sí mismos.



Puede evitar el impacto negativo de algunos usuarios sobre otros si no comparte el estado de los recursos entre los usuarios; en otras palabras, evitar los servicios.



Tomemos un escenario común como ejemplo: un desarrollador crea tanto una biblioteca como un servicio, pero luego descubre que la biblioteca (ya publicada) contiene algún tipo de error o incompatibilidad, y debe actualizarse para todos antes de mejorar el servicio. Esto se convierte en un gran dolor de cabeza, por lo que el desarrollador puede asumir ingenuamente que la funcionalidad debe transferirse de la biblioteca al servicio para facilitar las actualizaciones.



Pero si no tiene un servicio en absoluto, sino solo una biblioteca que contiene todas las funciones y hace todo lo que el servicio debería hacer, entonces este problema no surgirá en absoluto. Los usuarios que no actualicen sufrirán problemas existentes en la versión original de la biblioteca, y todos los demás estarán bien.



No siempre es posible evitar los servicios de esta manera; pero esto es posible con más frecuencia de lo que se piensa. Aquí hay algunas ideas para considerar:



  • , , . , , - , , Linux Kubernetes. , .



    , , .
  • , , . , ; , «».



    , , , . , :



    • ( )
    • ( )
    • (, , )
    • , (, «» , )
    • ,


    , .
  • , . , — .



    , , , . :





    , .
  • — , , ( , JSON, ..).



    . , ; .
  • , . , , , , , .



    , , , . , .


Con esta y otras ideas, a menudo puede crear una biblioteca en lugar de un servicio.



Al eliminar los costos de mantenimiento y actualización asociados con los servicios, las bibliotecas pueden contener más funcionalidad, lo que beneficia tanto al desarrollador como al usuario.






Publicidad



VDSina ofrece VDS en alquiler para cualquier tarea, una gran selección de sistemas operativos para instalación automática, es posible instalar cualquier SO desde su propio ISO , un conveniente panel de control propietario y un pago diario de una tarifa que puede crear individualmente para su Tareas.






All Articles