Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Page 278 sur 309 PremièrePremière ... 178228268270271272273274275276277278279280281282283284285286288 ... DernièreDernière
Affichage des résultats 8 311 à 8 340 sur 9267
  1. #8311
    Citation Envoyé par William Vaurien Voir le message
    sur le moteur en lui-même (donc impactant tous les navigateurs basés sur le moteur ?) ou juste sur Chrome ?
    Je crois que c'est Chrome et pas chromium (en tout cas le manifest est dispo sur le site de Chrome), et qu'on ne sait pas vraiment encore si Edge et compagnie vont suivre.

  2. #8312
    Citation Envoyé par TonTon Cookie Voir le message
    Dites sur une API REST vous décrivez comment dans l'URI de vos endpoints les actions qui sortent de CRUD ?

    Par habitude je fais ressource/{id}/{actions}
    Y a un problème éventuel ici déjà c'est si je veux appliquer une action sur toutes les ressources d'un type, puisqu'on pourrait avoir conflit entre ressource/{id} et ressource/{action}. Mais en arriver là c'est plus une erreur de design qu'autre chose.

    Le truc c'est plus que j'ai un collègue qui me dit que comme on décrit pas mal d'action on serait plus sur du RPC que du REST. Et là je suis un peu bloqué.
    Parce que lui par exemple il écrit des uri genre ressource/{id}/action/{id} (en l'occurence c'est une ressource dans une autre ressource, un message dans un chat pour être précis. Donc moi je lui ai demandé d'écrire ça après ma review : ressource/{id}/ressource/{id}/{action})

    Déjà parce que j'ai jamais vraiment bossé en suivant un design RPC (bon là c'est ma faute je rattrape en me documentant), du coup j'ai du mal à évaluer la pertinence de la remarque.
    Et aussi j'avais jamais trop remis en question le modèle d'URI que j'utilisais jusque là, que j'aurais bien continué à suivre.

    Ça peut paraître un peu con comme question mais on est une équipe assez jeune et on essaie d'avoir des bonne pratiques, sauf que sans sénior c'est pas toujours évident de trancher.

    Déjà ne pas être trop orthodoxe, il vaux mieux une URI qui est logique dans votre contexte que de vouloir absolument coller à une norme et finir avec un truc abscons.

    Ceci dit, en REST, et surtout dans le domaine d'un CRUD, tu ne mettra pas les actions sur l'URI, mais via le verbe (aussi connu sous le nom "HTTP request methods") par exemple, si je veux créer une voiture je ferai

    Code:
    POST /api/voiture/1
    La récupérer

    Code:
    GET /api/voiture/1
    La mettre à jour

    Code:
    PUT /api/voiture/1
    La supprimer

    Code:
    DELETE /api/voiture/1
    L'URI défini uniquement la ressource, les actions via les verbes.

    Mais cette méthode a ses limites, par exemple quand on veux appliquer des actions qui vont plus loin que les verbes disponibles (en général, tout ce qui est lié à ton domaine). Dans ce cas là tu essaye de combiner ton set d'URI de manière élégante avec des actions dans l'URI et tu y accède en POST.

  3. #8313
    Merci pour la réponse

    Du coup on s'est aussi dit que le but c'était surtout d'avoir une norme claire sur laquelle on est à l'aise pour travailler, quitte à plier un peu le pattern.

    En essayant de traduire certains endpoints en pur REST pour voir si ça nous apporterait quelque chose, on a pas mal d'actions qu'on a eu du mal à traduire en verbes HTTP + Body / Query params.
    A plus forte raison sans changer une bonne partie du code / demander aux équipes front pas mal de changements aussi.

    Tu veux dire quoi par "tout ce qui est lié à ton domaine" ? (C'est surtout la notion de domaine sur laquelle j'ai un doute ici).

  4. #8314
    Citation Envoyé par TonTon Cookie Voir le message
    Merci pour la réponse

    Du coup on s'est aussi dit que le but c'était surtout d'avoir une norme claire sur laquelle on est à l'aise pour travailler, quitte à plier un peu le pattern.

    En essayant de traduire certains endpoints en pur REST pour voir si ça nous apporterait quelque chose, on a pas mal d'actions qu'on a eu du mal à traduire en verbes HTTP + Body / Query params.
    A plus forte raison sans changer une bonne partie du code / demander aux équipes front pas mal de changements aussi.

    Tu veux dire quoi par "tout ce qui est lié à ton domaine" ? (C'est surtout la notion de domaine sur laquelle j'ai un doute ici).
    Je te conseille de jeter un coup d'oeil à la norme http quand à l'utilisation des verbes (protip, il y en a plein).
    Deuxièmement, regarde le niveau de maturité de ton api https://martinfowler.com/articles/ri...rityModel.html ça peut t'aider à y voir plus clair
    Citation Envoyé par Snakeshit Voir le message
    Mais comme on me l'a appris dans la Marine, plus les choses sont automatisées, moins ça consomme de cases plus vous en avez de libre pour choses utiles, comme penser à des filles dénudées .

  5. #8315
    Citation Envoyé par TonTon Cookie Voir le message
    Tu veux dire quoi par "tout ce qui est lié à ton domaine" ? (C'est surtout la notion de domaine sur laquelle j'ai un doute ici).
    Ton sujet / ton domaine d'application, par exemple dans comme on le défini dans le DDD.

  6. #8316
    Salut !

    Je viens quémander de l'aide sur Docker, car je n'y connais rien et la documentation/tutos que je trouve ne m'aide pas des masse. Je sais, j'ai 10 ans de retard.

    J'ai un gros projet node/js, réparti sur de nombreux repo git, qui utilise 3-4 bases de données différentes, tout ça.

    Comment commencer la dockerisation d'un tel projet ? Est-ce qu'il faut une image pour chaque "partie" du projet : une pour la BDD relationnelle, une autre pour cassandra, une pour chaque app du projet, etc ? Est-ce qu'au contraire c'est possible de tout faire tourner dans le même container ?

    Si il faut effectivement lancer une dizaine de containers, comment orchestrer tout ça ?

    Comment gérez-vous vos Dockerfile rapport à vos repo git ? Je prefererais avoir un repo qui gère Docker et qui pull tous les repos de code pour contruire l'infra locale, mais j'ai aussi vu pas mal de gens avoir leur Dockerfile directement dans le code source de chaque projet ? Il faut que j'ai une même instance de chaque base de données partagées entre chaque app, donc ça me semble compliqué d'avoir un Dockerfile par app.

    Merci d'avance

  7. #8317
    Alors si tu veux faire un trucs relativement simple :
    - un container docker par "service" (chaque app ou bdd)
    - chaque "service" utilise une image custom définie par un dockerfile (situé dans le repo associé au service)
    - le lien entre les containers (qui communique avec qui, qui est lancé en premier, etc) se fera avec un fichier docker-compose : https://docs.docker.com/compose/

    Ça va te permettre de faire tourner un truc fonctionnel en local et de découvrir le fonctionnement de base de Docker.
    Après, quand tu voudras aller plus loin, tu pourras te pencher sur les questions de déploiement/orchestration avec Kubernetes.
    C'est la faute à Arteis

  8. #8318

  9. #8319
    Citation Envoyé par tenshu Voir le message
    Je pense que si tu cite ce post, il faut églement parler de celui-ci que l'auteur à publié quelques jours après

  10. #8320
    Merci !

    J'ai réussi à avoir un mariadb qui tourne en local avec un script qui initialise la base via docker-compose. Ça tourne nickel, c'est en fait plus simple que ce que j'imaginais à la base. Plus qu'une dizaine de services à configurer .

    Pour le déploiement en prod j'ai déjà pas mal de trucs prêts, même si j'aimerais en savoir plus sur Kubernetes à terme. Et surtout son équivalence AWS.

  11. #8321
    Oui c'est extrêmement simple docker, j'ai mis aussi trop de temps à m'y mettre.

    Fournir un docker-compose sur un projet open-source par exemple, c'est quasi 0 support à faire. Ton stagiaire qui veux tester un truc ? Un fichier et une ligne de commande, c'est bon. Jongler entre les environnements de tests en développement sans pourrir ta machine ? Pareil.

    Le problème c'est que maintenant que tu y a goûté tu ne pourra plus t'en passer.

  12. #8322
    Et tu dois aussi racheter de la ram


  13. #8323
    Pas vraiment, l'overhead de docker est vraiment très contenu.

  14. #8324
    Bah ça dépend clairement combien de container tu dois faire tourner et ce qu'ils contiennent.

    Je viens de prendre un job et on m'a filé un laptop où les 32gb de ram ne sont pas de trop.
    Au quotidien je fais tourner 16 containers et c'est seulement pour faire tourner les services qui sont nécessaires pour faire fonctionner ce sur quoi je bosse.


  15. #8325
    C'est pas Docker le soucis alors, mais les services que tu host. Une BDD qui te prends 8Go de RAM en direct ne va pas prendre magiquement moins via Docker.

  16. #8326
    C'est bien ce que je disais oui


  17. #8327
    Ok car tu t'en rends pas compte mais de la manière dont tu a tourné ta phrase, ça pourrai aussi faire référence à la mauvaise réputation de Docker héritée des premières versions où le tooling était pas tout à fait mature, et où la conso RAM/CPU pouvais devenir folle ; dans la tête de beaucoup de sysadmin/devs, Docker = perte de ressources, alors que ce n'est plus du tout le cas depuis plusieurs années.

    Même docker-compose qui était déconseillé en prod, ne l'est désormais plus et tourne un peu partout sans soucis.

  18. #8328
    J'ai quand même un collègue qui a des problèmes de ram sur son mbp


  19. #8329
    J'aurais une autre question liée à l'env de dev, sur les mails.

    A l'heure actuelle j'utilise un serveur smtp payant en dev, mais j'aimerais que les credentials ne soient pas partagés avec la team.

    J'ai vu plusieurs possibilités :
    - créer des credentials SMTP pour chaque membre de la team, mais c'est chiant à setup, et ça n'empêche pas un leak
    - utiliser un serveur/mailcatcher local, qui envoie le mail en local et le capture directement dans une petite interface web
    - bypasser les mails, au moins pour l'auth via un truc qui check qu'on est bien en env de dev. Ce serait le plus simple mais ça ne résoudra pas comment tester les autres mails transactionnels.

    Comment faites-vous ?

  20. #8330
    Citation Envoyé par Awake Voir le message
    J'aurais une autre question liée à l'env de dev, sur les mails.

    A l'heure actuelle j'utilise un serveur smtp payant en dev, mais j'aimerais que les credentials ne soient pas partagés avec la team.

    J'ai vu plusieurs possibilités :
    - créer des credentials SMTP pour chaque membre de la team, mais c'est chiant à setup, et ça n'empêche pas un leak
    - utiliser un serveur/mailcatcher local, qui envoie le mail en local et le capture directement dans une petite interface web
    - bypasser les mails, au moins pour l'auth via un truc qui check qu'on est bien en env de dev. Ce serait le plus simple mais ça ne résoudra pas comment tester les autres mails transactionnels.

    Comment faites-vous ?
    Tu peux setup de l'authentification par mail relay en IP whitelistée. Qui fait que une IP peut balancer des mails sans auth mais seul cette IP peut faire ça, ce qui permet d'éviter les crédentials et permet d'être quand même sécure.

  21. #8331
    Pour un environnement de dev la solution d'un mailcatcher me semble le plus indiqué.


  22. #8332
    Citation Envoyé par tenshu Voir le message
    Pour un environnement de dev la solution d'un mailcatcher me semble le plus indiqué.
    +1 c'est qu'on utilise au quotidien ca coute rien et ca évite les bourdes.

  23. #8333
    Citation Envoyé par tenshu Voir le message
    Ayant hérité d'une infra utilisant GKE et 36 autres services managés GCP, le tout deploy avec Terraform, tout ça pour 1 backend avec 4 services et une DB ... Je peux que valider.

    C'est bien tant que t'as au moins une personne dispo tout le temps qui sait comment gérer ça, histoire que le moindre déploiement / modif soit pas une plaie. Sinon ça peut vite coûter cher.

    (Ceci étant dit même si Terraform c'est un peu âpre quand on connait pas, pour avoir vécu l'opposé, l'Infra as code c'est quand même top)

    Ah et les Mbp pre m1 ont tendances à prendre leur envol quand ont lance un peu trop de containers en local (même si ils font pas grand chose d'ailleurs). L'avantage c'est que y a un indice sonore assez clair quand il faut prendre une pause

  24. #8334
    Bon après avoir un peu bataillé, j'ai les 4 bdd qui tournent. Maintenant j'essaie de faire tourner mon app, et je paie le prix d'avoir été le seul dev pendant ces dernières années... packages npm installés globalement, clefs non partageables en env de dev (smtp, recaptcha, paiement), (pas les clefs de prod hein) etc etc Bref pas de quoi être fier, mais mieux vaut tard que jamais...

  25. #8335
    Courage, c'est du taff mais tu vas être content à la fin je pense

  26. #8336
    Ca y est, toute l'app tourne Effectivement je suis un homme heureux. 11 images, il en manque quelques unes mais qui ne sont pas importantes pour l'instant.

    J'ai pu installer la stack sur mon laptop du coup, à moi le développement au bord de la piscine

    Par contre mieux vaut une bonne connexion, l'install de toutes les images sur du wifi à 400ko/s a été long.

  27. #8337
    Question con, vu que je ne suis vraiment pas expert en dev web :
    J'ai une variable globale en Typescript. Je l'alimente dans une méthode, mais quand j'essaie d'y accéder via une autre méthode, ça ne marche pas dans le script js. Si je passe la valeur en paramètre de la méthode, ça marche.
    Quand je regarde le code généré, une méthode est transformée en fonction, du coup, ça me parait logique qu'elle doit être en paramètre. Mais y'a pas moyen d'utiliser des variables globales pour ce genre de choses en TS ?

  28. #8338
    Qu'entends tu par variable globale ? Comment déclares-tu ta variable et dans quelle scope ?

    Tu peux faire des variables globales simplement en les declarant avec const ou let dans le scope principal. Avec var ou sans declarateur tu peux faire des choses étranges aussi, que je ne recommanderais pas.

  29. #8339
    Parmi les canards qui font du Symfony, il y en a qui en ont déployé sur du Platform.sh ?

    Techniquement, sur le papier ça a juste l'air... idéal. Par contre côté tarif c'est très opaque.

  30. #8340
    Citation Envoyé par Awake Voir le message
    Qu'entends tu par variable globale ? Comment déclares-tu ta variable et dans quelle scope ?

    Tu peux faire des variables globales simplement en les declarant avec const ou let dans le scope principal. Avec var ou sans declarateur tu peux faire des choses étranges aussi, que je ne recommanderais pas.
    Je les déclare au niveau de ma classe en private : private toto: string

Page 278 sur 309 PremièrePremière ... 178228268270271272273274275276277278279280281282283284285286288 ... DernièreDernière

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •