Cloud Migration: Azure Blob Storage Static Website

Problem Statement: Legacy Front-End Applications On-Premises Architecture

Currently, a lot of front-end applications are built and deployed using on-prem Docker Kubernetes container images, which are hosted on web servers (Apache/NGINX/IIS, etc.)

The problem with this approach is that the workload container cluster must run constantly, which increases the compute and replication cost, infrastructure maintenance, and lack of recovery.

Cross-Pollination for Creativity Leveraging LLMs

Large Language models (LLMs) are used for creative tasks such as story writing, poetry, and script writing for plays. There are several GPT-based wrapper tools for advertising slogan creation, generating plot lines, and music compositions. Let's explore how to use LLMs to identify research gaps in a field and leverage the ideas of other fields to inspire new ideas. 

Problem Statement

Researchers need inspiration when they are stuck on a problem. It's common for researchers to get fixated on a particular hypothesis or approach. The vast amount of information can be overwhelming. It is a struggle in itself to sift through the information and identify a potential new path. Interdisciplinary collaboration is often challenging with researchers on both sides not familiar with the jargon of the two fields.

Writing An Efficient Software Design Document

Software design plays a vital role in the life of a software engineer. It begins with a problem statement and sets the path for implementing a solution. In this article, I’ll be talking about a typical process that I follow to thoroughly understand a problem and successfully deliver a solution.

Problem Statement

Defining a problem statement is the very first and crucial phase of the development process. These comes from product, leadership, or another engineers. A well defined problem provides a very clear picture of how the system should look like. But often, How well a problem statement is defined, there are a lot of ambiguities and unknowns. To overcome these, we proceed to requirement gathering.

Dynamic Signaling for Managing Communication Between Two Separate BPMN Flows

This document explains how to implement Dynamic Signaling in BPMN processes or event sub-processes to execute particular process instances or threads.

Problem Statement:

  • A signal event is generally used to communicate between two separate BPMN flows.
  • However, the signal event has a global scope. It will broadcast the event to all related sub-flows and handlers.

Whenever BPMN interacts with multiple requests, it is difficult for the process engine to identify the exact instance to process. There is also the possibility of the thrown signal getting caught by all active handlers and multiple requests at a time, which may lead to wrong execution. 

MySQL Container to Preset Database From SQL File

Problem Statement

Start MySQL container with a pre-defined .sql (database, tables, insert, etc.) file.

Solution

MySQL
 




x
24


 
1
CREATE DATABASE TESTDB;
2
COMMIT;
3
CREATE USER 'testuser'@'localhost' IDENTIFIED BY 'my-secret-pw';
4
GRANT ALL ON TESTDB.* TO 'testuser'@'localhost';
5

          
6
COMMIT;
7

          
8
use TESTDB;
9

          
10
CREATE  TABLE IF NOT EXISTS TESTTABLE
11
(
12
  id INT NOT NULL AUTO_INCREMENT ,
13
  modifiedOn TIMESTAMP,
14
  createdOn TIMESTAMP,
15
  testname VARCHAR (50),
16
  PRIMARY KEY (id)
17
);
18

          
19
INSERT INTO TESTTABLE (testname, createdOn, modifiedOn) VALUES 
20
("name-1", NOW(), NOW()),
21
("name-2", NOW(), NOW()),
22
("name-3", NOW(), NOW()),
23
("name-4", NOW(), NOW());
24
© 2020 GitHub, Inc.



Redis Reconnection Resiliency

Background

It's a world of microservices. Such applications or microservices are required to store data temporarily with frequent and super quick access to avoid disk IO operations using Redis-like in-memory databases. These applications have multiple in-memory database clusters to handle huge amounts of traffic and to avoid request failures. To access this data quickly, applications are required to have the preconfigured, established pooled connections ready for service from the applications.Image title

Problem Statement

Applications built for resiliency have backup options in case of application or infrastructure failures. In-memory database clusters that exist in different data centers on different servers allow for backup connectivity in case of data center or server issues.