Susheel Kumar, Author at Perficient Blogs

Posts by this Author

  • Topics
  • Industries
  • Partners





Susheel Kumar

Posts by this author:

7 Reasons Why Organizations Struggle with Microservices Adoption

Granularity – The word micro in microservices is not completely related to the number of operations, apis or endpoints that will be exposed from your service. Some people tend to think that they can have a single operation per microservice which will leads to a number of services. Managing those would be a nightmare.  It’s […]

Read more

Jenkins Delivery Pipeline and Build Promotion

Jenkins is a well known and frequently used Continuous Integration tool. With wide community support, Jenkins has a very large set of plugins available to accomplish almost anything you need. In this post, I will use the Job-DSL plugin to build a delivery pipeline which is a very common use case for a team following CI/CD […]

Read more

DevOps and Open Source Technologies

As everybody is adopting various cloud solutions in some shape or form which may be Public, Private or Hybrid or even changing the architecture or approach to do things (for example microservices), it’s essential that we implement a very high degree of automation. With the traditional approach and architecture, we had few components which makes […]

Read more

Why and What to Validate in a Maven POM xml File

Following are some of the ways you can validate a pom.xml file: Maven itself validates some basic things that it need to build your project Manually Review pom.xml for projects and modules against a checklist to make sure everything is correct. Automate using scripting language like Python, Jython. Buy why would someone perform an extra […]

Read more

API Lifecycle

Requirement – This is the stage where we want to expose some functionality using APIs. Analysis – We analyze what system will be required to fulfill functionality, API Contract etc. Development – APIs will be developed as per the contract. The contract or documentation will be published so that the consumer knows what is needed […]

Read more

When to break Monolithic

Often we wonder when we should break monolithic service into micro-service or small services. When is it time to make this change and what will it will take to accomplish. We all know services should be more cohesive and loosely coupled. While we may have started with that in mind, over time we look back and […]

Read more

Automating Docker Image builds

Why automate? Similar to any other automation, we get consistent results once we have automation in place. It speeds up the development process. You can produce the same result by following the same steps, so there is less of a change that it will work sometimes and not work other times. What is required to […]

Read more

Docker Swarm Quick Overview

Docker Swarm helps you create and manage Docker Clusters. Docker Swarm automatically handle scaling up and down depending on number of task you want to run. Docker swarm can handle load balancing internally among containers. Docker Swarm Components Docker Swarm contains following key components. Node – Special Container that run on each Swarm host. Node […]

Read more

Docker Container Best Practices

It is preferable to use Dockerfile to create an image. Using Dockerfile is the only way you can be sure of reproducing the same image every time. Use a Layered approach, but keep in mind that Docker imposes limits on the number of layers an image can have. To minimize layer, you can combine commands […]

Read more

An Introduction to Docker and Containers

Containers: Containers represent operating system level virtualizations which help you run multiple isolated systems i.e. containers in same machine. Docker: Docker is a containerization engine which means that it lets you create containers to achieve operating system level virtualization. Docker allows you to automate the containerization process. We can store Docker images in a Docker […]

Read more

Spring Boot Actuator – Application Monitoring Made Easy

Spring Boot Actuator helps you manage and monitor your applications using various way like HTTP, JMX and SSH. It allows you to monitor various aspects of your application. Actuator exposes various endpoint to provides different details about environment and application. Following are the endpoints exposed. All the endpoint can be accessed using <host>:port/endpoint for e.g.  […]

Read more

Most Common NoSQL Databases

Key-value pair NoSQL databases Most basic type of NoSQL database Two main concepts are Keys and Values Keys are nothing but identifiers through which you can refer values Values are values corresponding to a key Values can be like string, blob, image etc. Some database support buckets to provide separate placeholder to logically separate data. […]

Read more

Be Cloud Ready with 12 Factor App

Codebase –  One application one code base. Configuration should not be part of your application code. Dependencies – Application must supply its dependencies than relying on environment to provide. Configuration – Everything that changes should be declared outside code. User environment variable for configuration. Backing Services – Backing services are external resources and should be […]

Read more

How Restful Is Your API?

The Richardson’s Maturity Model (RMM) was developed by Leonard Richardson. It classifies REST-based Web services and REST principles they should depend on.   Level 0 – Services under this category use http as a transport mechanism against single URI. Typically, HTTP POST is used to make service calls. For e.g. SOAP or old XML-RPC Level […]

Read more

API Security: Common Threats and Considerations

Common API Threats: spoofing, tampering, repudiation, denial of service, unauthorized access, confidentiality violation API Security Considerations:  Identification – Know Your Consumer The common approach to implementing this is using API keys, which are nothing but randomly generated values that will vary for each consumer. Authentication – is Consumer Authentic User-Password over SSl/TSL: the API consumer will be providing a user […]

Read more

8 Benefits of Microservices

Microservices are small, independent services that work together. In other words, these services are small, highly decoupled and focus on doing a small task at a time. Follow the Single Responsibility Principle Resilient/Flexible – failure in one service does not impact other services. If you have monolithic or bulky service errors in one service/module it […]

Read more

How to do API Versioning

1- URL based versioning Easy and very common way to version api is to include version no in api url. For e.g. http://myapi/v1.0.0 , http://myapi/v1.0.1 Easy to use and identify different version by looking URL. Over time need to maintain various urls 2- Using query param Another easy to use startegy for api versioning For […]

Read more

What is Service Virtualization and Why Do We Need It?

Service Virtualization emulates the behavior and data of dependent systems such a way that represents the dependent system without any constraints, thus allowing software to be developed and delivered faster, with lower costs and higher reliability. Before Virtualization:   After Virtualization: Constraints which affect development and testing at various SDLC phases: Dependent component/services still not completed Dependent […]

Read more

Private APIs Vs Public APIs

Private APIs : APIs which are used within organization to build apps. Apps built on private APIs can be used inside organization or released to public using various channels like company site, app store. Partners can use private APIs to build apps. Private APIs enable faster business integration with partners. Avoid dependency on external APIs […]

Read more

Top 10 Reasons Why You Need API

1. First things first: Not having an API today is like not having a website in the ’90s. 2. Spread your wings – reach more channels and devices that you can imagine. 3. You need it because your competitor has it. 4. Collaborate with you partners more closely than ever. 5. New revenue opportunity as you […]

Read more

Subscribe to the Weekly Blog Digest:

Sign Up