Posts

Python and Flask RESTful API Tutorial

Image
Python and Flask RESTful API Tutorial Introduction         Machine Learning (ML), Artificial Intelligence (AI) and Deep Learning are getting popular and are being used almost in every domain and industry. In most of the places Python is the language being used for programming ML, AI and Deep Learning models as there are many Python libraries that support the requirements and the Python libraries have evolved over time and they are only getting better and better. To display the output data of the ML, AI or Deep Learning models or to pass input data to ML, AI or Deep Learning models using UI built on AngularJS or ReactJS or any of the other latest UI frameworks, there is the requirement of RESTful APIs to send data to UI and receive data from UI. This is where Flask comes in.         I was looking online for basic tutorials to learn Flask RESTful APIs and most of the posts I found were very old, dating back to 2013 or 2014 which do not even w...

IoT (Internet of Things) Tutorial

Image
IoT (Internet of Things) Tutorial Introduction         I was searching online for tutorials about IoT software development  and most of the blogs or links gave very minimal information about the end to end implementation of IoT. Hence I decided to come up with this blog post.         In this tutorial I will be using RabbitMQ as message broker. The reason I have chosen RabbitMQ as message broker is because we have a RabbitMQ cluster in Production that processes more than a million messages in a minute. I will be sending and receiving messages using the MQTT Protocol with a Simple MQTT Paho Client. I will also be using a Simple AMQP Client to receive and send messages which will give an end to end software implementation of IoT. You may be wondering what the abbreviations MQTT and AMQP mean and also what Paho means. To understand these please read on as I have explained them in very simple terms. So there are 2 Applications required...

Dropwizard Docker Example

Image
Dropwizard Docker Example Introduction         I was looking online for a simple example/tutorial on how to dockerize my existing Dropwizard application which I have as a fat jar. Most of the tutorials have complicated examples/complex steps explained. Hence I have come up with this post to explain Docker and its usage in simple steps.          In this tutorial we will be dockerizing an existing Dropwizard fat jar, building it and running it. Docker         Docker provides a way to run applications securely isolated in a container, packaged with all its dependencies and libraries. Docker provides an additional layer of abstraction and automation of operating-system-level virtualization on Windows and Linux. Docker is a software containerization platform. Advantages of using Docker Consistency across environments: An application and all its dependencies can be bundled into a single container. A ...

REST API using Play Framework with Java

Image
REST API using Play Framework with Java Introduction           In the latest Play 2.6 release, they have decided not to support Activator. I was searching online for a basic application in the latest  Play 2.6 release . But I could not find any post or tutorial . Hence I decided to come up with this post.   In this post, we will be creating an Application using Play Framework in Java with GET, POST, PUT and DELETE APIs for CRUD operations on an Employee Entity class. To keep things simple, all data will be kept in memory in a simple map. Play as a framework does support UI as well, however in this tutorial we will be focusing only on the services part and not the UI. Play Framework                 Play Framework is built on Akka and is based on a lightweight, stateless, web-friendly architecture. Play provides predictable and minimal resource consumption (CPU, memory, threads) for highly-scalab...

REST API and CRUD Operations with Akka HTTP

Image
REST API and CRUD Operations with Akka HTTP Introduction         In this post, we will be creating an Akka HTTP Application with GET, POST, PUT and DELETE APIs for CRUD operations on an Employee Domain class. All data will be kept in memory in a Vector. Akka HTTP         The Akka HTTP modules implement a full server- and client-side HTTP stack on top of akka-actor and akka-stream. It’s not a web-framework but rather a more general toolkit for providing and consuming HTTP-based services.  Most important features that Akka HTTP provides are:                Asynchronous processing  Non blocking I/O operations  For more details on Akka HTTP, you can check: Akka HTTP Website . Requirements to Run the Application: 1. Intellij IDE with SBT and Scala Plugins In this tutorial I will help you to build an Akka HTTP Application in a few simple steps. Step 1: Dependencies ...