Avatar

clsource

clsource@feddit.cl
Joined
139 posts • 8 comments
Direct message

No taria mal un libro sobre Elixir y Mote con Huesillos xd

permalink
report
parent
reply

Hola, gracias por comentar. Acá algunas respuestas.

  1. Puedes armar proyectos de APIs solo utilizando Plug y Mix, Phoenix solo te da una estructura estandarizada y herramientas adicionales. En nuestro bot de MSN Messenger solamente utilizamos Plug sin Phoenix ya que solo se necesitaba un endpoint GET simple.

https://github.com/ElixirCL/msn-chatbot/blob/main/lib/msn_chatbot.ex

  1. Es bastante normal tener GenServers en proyectos Phoenix, sobre todo para cosas que requieren algo que guarde estado. Por ejemplo en nuestro Bot de Discord, usamos un elemento supervisado para la conexión a Discord, y en nuestro bot de MSN Messenger guardamos el historial de conversaciones.

https://github.com/ElixirCL/mate/blob/main/lib/mate/application.ex#L22

  1. PubSub de Phoenix es una abstracción que nos permite simplificar el uso del patrón de Publishers/Subscribers. El implementar este patrón con un GenServer o GenStage es viable, sin embargo, se debe considerar la persistencia y tomar casos de uso de reintentos al enviar los eventos, para estos casos es mejor utilizar soluciones estandarizadas que elaborar algo propio.

Algunos links de interés.

Según nuestro amigo @emoragaf de nuestro Discord

Sip, por ejemplo en teoría yo podría usar unos gen stages para manejar alertas en tiempo real en live view, pero hay cosas extra que gen stage provee que probablemente nunca aprovecharía, en ese sentido pubsub es más simple, pero se adapta mejor a ese caso de uso en particular Por el otro lado, yo podría usar pubsub para procesar datos, pero quizás tendría que implementar a mano batching, gen stage en ese caso sería mejor fit ya que incluye abstracciones como esa

permalink
report
parent
reply

¿Qué stack usaste?

permalink
report
reply

Es un lenguaje de programación muy bonito. Puedes hacer muchas pócimas locas :)

permalink
report
parent
reply