Articles

Plongée profonde dans AWS CDK : Techniques avancées d'Infrastructure as Code avec Typescript et Python

Plongez dans le monde d’AWS CDK et découvrez les techniques avancées d’Infrastructure as Code avec Typescript et Python !

Comprendre AWS CDK

Comprendre AWS CDK

Qu’est-ce que AWS CDK?

Le Kit de développement Cloud AWS (CDK) est un cadre de développement logiciel open source pour modéliser et fournir des ressources d’application cloud à l’aide de langages de programmation familiers. Les dispositions des applications cloud peuvent être effectuées via AWS CDK dans des langues familières aux développeurs, comme TypeScript et Python, étendant ainsi la flexibilité et la fonctionnalité qui peuvent ne pas être présentes dans une CloudFormation simple basée sur JSON/YAML.

Pourquoi utiliser AWS CDK?

AWS CDK offre une variété d’avantages pour les développeurs qui souhaitent déployer leurs applications cloud. Tout d’abord, il offre une grande flexibilité pour le développement d’applications cloud. Les développeurs peuvent utiliser leur langage de programmation préféré pour définir leurs ressources cloud, ce qui leur permet de créer des applications plus complexes et plus riches. En outre, AWS CDK offre une meilleure visibilité et une meilleure gestion des ressources cloud. Les développeurs peuvent voir clairement ce qui est déployé et comment cela est configuré, ce qui leur permet de mieux gérer leurs applications cloud.

Comment fonctionne AWS CDK?

AWS CDK fonctionne en convertissant le code TypeScript ou Python en CloudFormation. Une fois que le code est converti, il est envoyé à AWS CloudFormation pour être exécuté. AWS CloudFormation prend ensuite le code et le déploie sur les ressources cloud appropriées. Une fois le déploiement terminé, AWS CloudFormation envoie un rapport à l’utilisateur pour confirmer que le déploiement s’est bien déroulé. De plus, AWS CDK fournit des outils supplémentaires pour faciliter le développement et le déploiement des applications cloud.

Source de l’article sur DZONE

Comparer Podman Compose et Docker Compose

Podman Compose et Docker Compose sont des outils puissants qui permettent de gérer des applications multi-conteneurs. Découvrons comment les comparer !

Explorer Podman Compose

Test de Podman Compose

Lors du test de Podman Compose, nous avons constaté que les fonctionnalités sont limitées par rapport à Docker Compose. Nous avons également constaté que l’utilisation de fichiers YAML Kubernetes est recommandée pour ce type de tâches. Nous avons également constaté que le Podman team peut corriger les problèmes rencontrés avec Podman Compose. Enfin, nous avons constaté que Docker Compose peut être utilisé en combinaison avec Podman.

Conclusion

En conclusion, Podman Compose est une bonne solution pour les utilisateurs qui souhaitent utiliser des fichiers Compose selon la spécification Compose avec un backend Podman. Cependant, il est important de garder à l’esprit que les fonctionnalités sont limitées par rapport à Docker Compose et que l’utilisation de fichiers YAML Kubernetes est recommandée. Il est également possible d’utiliser Docker Compose en combinaison avec Podman. Enfin, le Podman team peut corriger les problèmes rencontrés avec Podman Compose.

Source de l’article sur DZONE


Prerequisites

  • Basic understanding of .NET Core 6 API and C#.
  • Visual Studio 2022
  • SQL Server

Agenda

  • Create .NET Core API using version 6
  • Configure Hangfire in .NET
  • Look into the different types of jobs that are present in Hangfire.

Overview

  • Hangfire is open-source and used to schedule the job at a particular event and time.
  • It is also used to create, process, and manage your background jobs.
  • We use this in background processing without user intervention.
  • Hangfire is reliable and persistent. It will take care of all things once the job is scheduled.
  • Hangfire dashboard is also available for us to manage all things easily.

Why Hangfire is Required in Background Processing

  • Sometimes we need to do lengthy operations like database updates and database maintenance so it’s managed periodically. 
  • Batch import from XML, JSON, and YAML files.
  • Recurring reports on a periodic basis.
  • Mass notification on subscription and sign up basis.

So, these are things that we are able to do periodically over a certain period of time as per our requirements.

There are different types of jobs that are present in Hangfire. We will look at them one by one.

Source de l’article sur DZONE

Efficient code doesn’t just run faster; if it’s using less compute-resource, it may also be cheaper to run. In particular, distributed cloud applications can benefit from fast, lightweight serialization. 

OpenSource Java Serializer

Chronicle-Wire is an OpenSource Java serializer that can read and write to different message formats such as JSON, YAML, and raw binary data. This serializer can find a middle ground between compacting data formatting (storing more data in the same space) versus compressing data (reducing the amount of storage required). Instead, data is stored in as few bytes as possible without causing performance degradation. This is done through marshaling an object.

Source de l’article sur DZONE

You might have heard about the K8ssandra project and want to start contributing, or maybe you want to start using all of its features. If you aren’t familiar with K8ssandra (pronounced like “Kate Sandra”), you can read this overview before digging into the developer activities in this post.

In a nutshell, K8ssandra is an open-source distribution of Apache Cassandra™ for Kubernetes, which includes a rich set of trusted open-source services and tooling. K8ssandra comes with handy features that are baked-in and pluggable, which allows for flexible deployment and configuration.

Source de l’article sur DZONE

Rightsizing resource requests is an increasing challenge for teams using Kubernetes—and especially critical as they scale their environments. Overprovisioning CPU and memory lead to costly overspending, but underprovisioning risks CPU throttling and out-of-memory errors if requested resources aren’t sufficient. Dev and engineering teams that don’t thoroughly understand the live performance profile of their containers will usually play it safe and request vastly more CPU and memory resources than required, often with significant budget waste.

The open source Kubecost tool (https://github.com/kubecost) has had a Request Sizing dashboard to help Kubernetes users bring more cost efficiency to their resource requests. One of the tool’s most popular optimization features, the dashboard identifies over-requested resources, offers recommendations for appropriate per-container resource requests, and estimates the cost-savings impact of implementing those recommendations. The dashboard utilizes actual usage data from live containers to provide accurate recommendations. However, leveraging the dashboard has included some hurdles, requiring users to manually update YAML requests to align resource requests with Kubecost recommendations or introduce integrations using a CD tool. 

Source de l’article sur DZONE

Kubernetes offers developers tremendous advantages… if they can overcome the platform’s inherent complexities. It can be a big « if. » Without additional tooling, developers aren’t able to simply develop their applications on Kubernetes, but must also become experts in writing complex YAML templates to define Kubernetes resources. A relatively new tool called Shipa provides an application management framework that largely relieves developers of this burden, enabling dev teams to ship applications with no Kubernetes expertise required.

Having recently put the tool to the test, this article will demonstrate how to install and utilize Shipa to simplify Kubernetes and ease some common developer frustrations.

Source de l’article sur DZONE

Message and Event payload validation has been a rather thorny problem ever since extensible data structures (XML, JSON, YAML…) started to be used at scale. In fact, very little progress has been made since the good old days of DTDs. Schema definition languages such as XML-schema, json-schema, or even the OpenAPI schema are unfamiliar to most developers and often result in a rather anemic validation set of rules, leading to a perceived low value, and therefore a lack of interest. 

There are three key problems in a schema architecture: 

Source de l’article sur DZONE

Photo by Oskar Yildiz on Unsplash.

When building integration components, it’s almost a given that we will have to process data in different formats like JSON, XML, YAML, etc. It’s imperative that any integration product should have very good support for handling these data formats. This kind of robust support for handling data in different formats makes the product flexible to be adapted to different use cases.

In this article, we will look into the support provided by Kumologica for handling the data in these different formats.

Source de l’article sur DZONE

At Loodse, we’re using Quay.io to host our various Docker repositories. Over the last few years, cruft accumulated and we noticed that keeping team memberships up-to-date as employees and customers change became a hassle.

For Github we already make use of Peribolos, a wonderful tool to manage your Github organization declaratively. For quay we unfortunately did not find an equivalent solution, so we made our own.

Source de l’article sur DZONE