![]() ![]() Some (not all) of the factors that triggered the migration were: As such, we really wanted to find an alternate imperative and compiled language that could run on the JVM.Ĭonsidering that there are people at Talkdesk who have experience with Kotlin, we decided to give this language a try, because it would be a low-risk component to test such a migration. But we do have a few applications running on the JVM that have been written in Java, Clojure and Scala.Īfter a few months writing this specific component in Java, we felt the shortcomings of the Java language when compared to modern languages (like Ruby, Rust or Kotlin). KotlinĪt Talkdesk, we use Ruby for most of our code base because we love its simplicity and expressiveness. The code base had 1566 lines of code (LoC). ![]() This component was originally written in Java 8 and use DropWizard as the foundation framework for the Web API. Resilience: It must resist to instability on the connection to the message broker.Payload: The usual payload size ranges from 100 Bytes to 20 KBytes.Load: It must be able to handle an average load of 800 requests per second (RPS), sometimes peaking at 1400 RPS.Publish the object as a JSON message to a message brokerĪlthough it looks like a fairly simple tool, there are some relevant non-functional requirements to be considered:.Parse the entry using a Regex and build an object from the content.Parse the request body, splitting it into several entries.Accept HTTP POSTs on a specific endpoint.At Talkdesk, we have this software component that provides a small but important data bridging functionality. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |