Gökhan GÖKALP
10.06.2017
Devnot Atölye
Gökhan GÖKALP
1 billion TL sales in 2016
#1 fashion e-tailer in Turkey
70% women online shoppers
visit Trendyol
80% Growth in sales in 2016
Profitable since 2014
Biggest internet employer
1200 People
Our continuously growing and updating tech stack:
.net mvc, .net web-api, javascript, jquery, node.js, elastic search, redis, couchbase, rabbitmq, objective c, saas, less, ecmascript 6, react , ms sql, angular.js, typescript, android, selenium, java
Agenda
Messaging systems allow applications to communicate by sending messages to each other without any continual connection between each other.
The Reactive Manifesto
Message Driven
Also, it is possible to host on the cloud easily.
Point-to-Point messaging style
Publish-Subscribe messaging style
Asynchronous operations are very important for building more an effective scalable system.
e.g. Bulk operations, image processing
Asynchronous operations are very easy with using message queue implementation such as RabbitMQ.
decoupling
AMQP is a standard protocol of message queuing, which was built for reliable message transmission between systems.
Open protocol standart for Enterprise Messaging
Key Points
A direct exchange delivers messages to queues based on the message routing key. A direct exchange is ideal for the unicast routing of messages.
Topic exchanges route messages to queues based on wildcard matches between the routing key and something called the routing pattern specified by the queue binding. Topic exchanges are commonly used for the multicast routing of messages.
The fanout copies and routes a received message to all queues that are bound to it regardless of routing keys or pattern matching as with direct and topic exchanges. Fanout exchanges are ideal for the broadcast routing of messages.
event
Which allows simple queries on properties in the headers of a message.
Implementations
Alternatives
RabbitMQ is lightweight and easy to deploy on premise and in the cloud. Also can be deployed in distributed.
Also RabbitMQ runs on many operating systems.
RabbitMQ is the most widely deployed open source message broker
Thanks...