What is Messaging Fan-out?

by XDK 8. August 2019 00:22

Explanation:

Fan-out is a messaging pattern where messages are broadcast in a one-to-many arrangement.One of the very common architectural patterns is fan-out where an event is sent to multiple subscribers by a broker. An event can be like placing an order, which can then be handled by inventory service, record-keeping, as well as shipping service concurrently. These events can also be very frequent - like clickstreams, or search strings on a website. AWS allows for fan-out architecture with SNS topics, and SQS queues. SQS queue(s) can subscribe to SNS topics and receive any message sent to the SNS topic(s)

* SNS - Amazon Simple Notification Service (SNS) is a highly available, durable, secure, fully managed pub/sub messaging service that enables you to decouple microservices, distributed systems, and serverless applications. Additionally, SNS can be used to fan out notifications to end users using mobile push, SMS, and email.

* SQS - Amazon Simple Queue Service (SQS) is a fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications.

Tags:

Amazon Web Service

What is serialization and Deserialization Python?

by XDK 7. August 2019 03:43

Explanation:

Python object serialization and deserialization is an important aspect of any non-trivial program. If in Python you save something to a file, if you read a configuration file, or if you respond to an HTTP request, you do object serialization and deserialization.

Serialization refers to the translation of object state into bytes to send it over the network or store it in hard disk. We need serialization because the hard disk or network infrastructure are hardware component and we cannot send objects because it understands just bytes and not objects

Pickling and Unpickling in Python.

Pickling in python refers to the process of serializing objects into binary streams, while unpickling is the inverse of that. It’s called that because of the pickle module in Python which implements the methods to do this.Pickling is useful when you want to save the state of your objects and reuse them at another time without losing any instance specific data. If you are using large files, CPickle is recommended. CPickle is implemented in C, making it much faster.

 

Tags: ,

Python

Amazon CloudFront vs Elastic Load Balancing

by XDK 7. August 2019 01:19

Amazon CloudFront is a web service that speeds up distribution of your static and dynamic web content, such as .html, .css, .js, and image files, to your users. CloudFront delivers your content through a worldwide network of data centers called edge locations.

Elastic Load Balancing automatically distributes incoming application traffic across multiple Amazon EC2 instances. It enables you to achieve greater levels of fault tolerance in your applications, seamlessly providing the required amount of load balancing capacity needed to distribute application traffic.

Tags:

Amazon Web Service

What is Route 53 in AWS?

by XDK 4. August 2019 16:32

Amazon Route 53 effectively connects user requests to infrastructure running inAWS – such as Amazon EC2 instances, Elastic Load Balancing load balancers, or Amazon S3 buckets – and can also be used to route users to infrastructure outside of AWS.

More...

 

Tags: , ,

Amazon Web Service

What is Blue-Green Deployment?

by XDK 4. August 2019 16:20

Explanation:

Blue-green deployment is a technique that reduces downtime and risk by running two identical production environments called Blue and Green.

At any time, only one of the environments is live, with the live environment serving all production traffic. For this example, Blue is currently live and Green is idle.

As you prepare a new version of your software, deployment and the final stage of testing takes place in the environment that is not live: in this example, Green. Once you have deployed and fully tested the software in Green, you switch the router so all incoming requests now go to Green instead of Blue. Green is now live, and Blue is idle.

This technique can eliminate downtime due to app deployment. In addition, blue-green deployment reduces risk: if something unexpected happens with your new version on Green, you can immediately roll back to the last version by switching back to Blue.

Tags:

Amazon Web Service | Azure DevOps Services | General

REST API Versioning

by XDK 19. July 2019 18:48

Explanation:

API version can be specified either in the header of the HTTP request or as a URL query parameter:

HTTP request header: Accept: application/json;api-version=1.0
Query parameter: GET {url}/{organization}/_apis/{area}/{resource}?api-version=1.

Supported versions

Product 1.0 2.0 3.0 4.0 5.0
Azure DevOps Services X X X X X
Azure DevOps Server 2019 X X X X X
Team Foundation Server 2018 X X X X -
Team Foundation Server 2017 X X X - -
Team Foundation Server 2015 X X - - -

Note : Once a preview API is deactivated, requests that specify a -preview version will be rejected (for example, 1.0-preview.1, 1.0-preview.2).

 

Tags:

Azure DevOps Services | REST APIs | Team Foundation Server

How to copy folders and files with the permissions?

by XDK 30. January 2015 06:46

Solution:

xcopy "<Source Folder>" "<Target Folder>" /O /X /E /H /K

/X - Copies file audit settings and file ownership and ACL information.
/H - Copies hidden and system files.
/E - Copies directories and sub directories, including empty ones.
/V - Verifies each new file.

/D - Copies files changed on or after the specified date (D:m-d-y).If no date is given, copies only those files whose source time is newer than the destination time.

/Y - Suppresses prompting to confirm you want to overwrite an existing destination file.

/K - Copies attributes. Typically, Xcopy resets read-only attributes

/O - Copies file ownership and ACL information

Tags: ,

Supporting Tools

Not able to download files from IIS site or application folders which are set to directory browsing.

by XDK 31. October 2014 06:33

Exceptions:

  • The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable
  • Unable to download file from server
  • unable to open this internet site. The requested site is either unavailable or cannot be found. Please try again later

Explanation:

By default, IIS blocks some file extentions. You can see the blocked file extensions in "Request Filtering" --> "File Name Extensions" tab.  

Solution:

  • Open IIS manager (cmd --> inetmgr)
  • Click on the folder or application site
  • Double click on "Request Filtering"

  • Select "File Name Extensions" tab
  • Select the file extension and click on remove.

If you still have the issue with some other extensions, then add the file extensions to "MIME Type" as below.

  

 

 

Tags:

General

w3wp.exe process is missing after TFS app tier reboot

by XDK 23. December 2013 11:12

Explanation:

w3wp.exe an Internet Information Services (IIS) worker process is a windows process which runs Web applications, and is responsible for handling requests sent to a Web Server for a specific application pool. W3wp.exe process will not be started automatically after App tier reboot or IIS restart or application pool restart. w3wp.exe will be launched once the first request is made to the TFS Application.

Solution:

1. Try accessing TFS application once http://tfs:8080/tfs. See whether the w3wp.exe is available in "Windows Task Manager" --> "Processes Tab"

2. You can configure Worker process started automatically by adding startMode attribute to TFS application pool to AlwaysRunning in your applicationHost.config

<applicationPools>

   <add name="Default App Pool" startMode="AlwaysRunning" />

</applicationPools>

Solution 2 will work for IIS 7.5 or newer

Tags:

Team Foundation Server | TFS 2010 | TFS 2012 | TFS 2013

Host Dormancy Concept in TFS

by XDK 21. December 2013 13:44

Explanation:

Host Dormancy is a feature built-in to the 'kernel' of TFS that will pause jobs from running if a collection hasn't been accessed in a period of time. If a collection isn't being accessed, that means that the data isn't changing, so there's no need to run some jobs. This is key functionality that allows the Team Foundation Service to scale to thousands of collections.

Tags:

Team Foundation Server

Disclaimer

The information provided here is based on my expreriences, troubleshooting and online/offline findings. It can be used as is on your own risk without any warranties and I impose no rights.

About the author

My name is Xavier Dilip Kumar Jayaraj and I am a Software Configuration Management Engineer with a background in application development, Build & packaging using Install Shield.

Profile in LinkedIn , PCEP-Certified , Azure-DevOps-C1

DevOps Tools

ALM tools:
Azure DevOps
IBM Rational
CA Agile Central-Rally
CollabNet VersionOne

Configuration tools:
• Puppet
• CHEF
• AWS OpsWorks
• Ansible

Build automation tools:
Apache Ant 
Apache Maven
Boot
Gradle
Grunt
MSBuild
Waf

Continuous Integration tools:
Bamboo
Buildbot
Hudson
TeamCity

Testing tools:
Selenium
Watir
Wapt
ApacheJMeter
QTest

Version control system tools:
Subversion
Team Foundation Server
GIT
Mercurial
Perforce

Code review tools:
Crucible
Gerrit
GitHub
Bitbucket Server

Continuous Delivery/release management tools:
XL Release
ElectricFlow
Serena Release
Octopus Deploy

Quotes I Like

"Failure will never overtake me if my determination to succeed is strong enough."  - Dr. APJ. Abdul Kalam

"Always be yourself, express yourself, have faith in yourself, do not go out and look for a successful personality and duplicate it." - Bruce Lee

"Technology is just a tool. In terms of getting the kids working together and motivating them, the teacher is the most important." - Bill Gates

"Innovation distinguishes between a leader and a follower." - Steve Jobs

Knowledge Base Articles