Elixir/Phoenix Liveview était une erreur

Elixir/Phoenix Liveview était une erreur


J’ai pris une décision technique coûteuse concernant Phoenix Liveview pour l’application Web Smol Talk il y a environ un an, que je regrette maintenant, et je prends quelques notes pour expliquer pourquoi.

Pour être clair, il s’agit certainement d’un problème de compétences, mais la courbe d’apprentissage n’en valait tout simplement pas la peine (pour quelqu’un qui maîtrise déjà JS/Python).

Nous avions besoin d’une plateforme de pipeline récapitulative personnalisable. J’avais toujours admiré Elixir et Liveview de loin et j’avais un ami qui était prêt à les construire. Alors j’ai dit oui.

  • J’ai toujours aimé l’idée d’un simple rendu monolithique côté serveur
  • Doit être rapide et facile à restituer les différences HTML (un peu comme les composants du serveur React)
  • en particulier lorsqu’une belle intégration avec l’ORM rend automatiques les vues CRUD des champs
  • Elixir semblait tolérant aux pannes et rapide
  • Oban avait une bonne réputation en tant que coureur de chantier

Instabilité/Lenteur

Les pages étaient TRÈS lentes à charger.

et environ 20 ? 30 ? % des chargements de pages ont échoué. Je suis presque sûr que ce n’est pas un problème de base de données, c’est juste très lent à restituer beaucoup d’interface utilisateur.

Image

j’avais l’impression d’être en ligne.

Image

immaturité de l’écosystème

nous avons pu choisir les éléments SOTA pour notre application. Je compte que 20 de nos dépendances sur 36 (55%) sont des versions 0.x.

Image

Impossible de faire des formulaires conditionnels

cela est sûrement lié à nos choix de dépendances, mais je voulais que certains éléments de l’interface utilisateur apparaissent ou soient ajoutables, sous réserve de certains autres éléments. Cela nous a coûté une semaine à bidouiller du code avant d’abandonner et de conclure que ce n’était pas possible sans…

Image

Ajout de JS

pour avoir toute l’interactivité côté client que vous souhaitez fondamentalement avec JS. LiveView offre de bons moyens de transmettre des données aux composants js, mais au moment où vous écrivez des composants, vous souhaitez en écrire de plus en plus jusqu’à ce que vous n’utilisiez Phoenix que comme backend d’API. alors autant écrire un SPA.

Erreurs horribles

je voudrais vous montrer ces erreurs mais pour le moment, l’application ne se charge pas, donc

Image

(l’addendum est ok, il se charge maintenant… et oui, ce genre de poubelle absolue est normal. Aucune gestion des erreurs sûre que vous attendez d’un système sensé.)

Image



Source link

Postagens Similares

  • ما الذي لا يبدو وكأنه عمل؟

    يناير 2015 والدي عالم رياضيات. كان يعمل في معظم طفولتي في شركة وستنجهاوس، في تصميم نماذج المفاعلات النووية. لقد كان أحد هؤلاء الأشخاص المحظوظين الذين يعرفون في وقت مبكر ما يريدون القيام به. عندما تتحدثين معه عن طفولته، هناك نقطة تحول واضحة في سن الثانية عشرة تقريبًا، عندما “أصبح مهتمًا بالرياضيات”. نشأ وترعرع في بلدة…

  • Schema zu WebAssembly kompilieren – Eli Benderskys Website

    Eines meiner ältesten Open-Source-Projekte – Bob – hat vor ein paar Monaten seinen 15. Geburtstag gefeiert. Bob ist eine Suite von Implementierungen der Programmiersprache Scheme in Python, einschließlich eines Interpreters, eines Compilers und einer VM. Damals habe ich mich mit CPython-Interna befasst und war sehr neugierig, wie CPython-ähnliche Bytecode-VMs funktionieren. Bob führte ein Experiment durch,…

  • إرشادات مطوري Apple للتقييمات ومطالبات المراجعة

    تصميم أبل: تجنب مضايقة الناس. يمكن أن تكون طلبات التقييم المتكررة مزعجة، وقد تؤثر سلبًا على رأي الأشخاص في تطبيقك. فكر في السماح بأسبوع أو أسبوعين على الأقل بين الطلبات، والحث مرة أخرى بعد أن يُظهر الأشخاص تفاعلًا إضافيًا مع تجربتك. تفضل المطالبة المقدمة من النظام. توفر أنظمة iOS وiPadOS وmacOS طريقة متسقة وغير تدخلية…

  • Sofa 5 is de app die je nodig hebt om tv, films, podcasts en alles te volgen

    Hallo, vrienden! Welkom bij Installateur Nr. 122, uw gids naar het beste en Rand-ste dingen ter wereld. (Als je hier nieuw bent, welkom, ga naar ‘Zona’, en je kunt ook alle oude edities lezen op de Installateur startpagina.) Deze week heb ik erover gelezen vroege Apple-werknemers En weer-apps En productiviteitssystemen van één paginakijken Avatar: Vuur…

  • পড়া প্রয়োজন

    নভেম্বর 2022 আমি ছোটবেলায় পড়েছিলাম বৈজ্ঞানিক কল্পকাহিনীর বইগুলিতে, পড়া প্রায়শই জ্ঞান অর্জনের আরও কার্যকর উপায় দ্বারা প্রতিস্থাপিত হয়েছিল। রহস্যময় “টেপ” এটিকে একজনের মস্তিষ্কে লোড করবে যেমন একটি প্রোগ্রাম কম্পিউটারে লোড করা হয়। এই ধরনের জিনিস খুব শীঘ্রই ঘটতে অসম্ভাব্য. পড়ার জন্য একটি প্রতিস্থাপন তৈরি করা কঠিন হবে বলেই নয়, তবে একটি বিদ্যমান থাকলেও এটি অপর্যাপ্ত…

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *