Redis​ ​Workshop 
for​ ​Architects 
 
©​ ​​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Background 
HashedIn​ ​organizes​ ​Redis​ ​conferences​ ​and​ ​meetups​ ​in​ ​multiple​ ​cities.​ ​These​ ​events​ ​attract 
attendees​ ​from​ ​diverse​ ​backgrounds​ ​-​ ​developers,​ ​solution​ ​architects,​ ​managers,​ ​qa, 
devops,​ ​system​ ​administrators,​ ​and​ ​HR/recruiters.​ ​It​ ​becomes​ ​extremely​ ​challenging​ ​to 
arrange​ ​talks​ ​/​ ​presentations​ ​that​ ​cater​ ​to​ ​such​ ​a​ ​diverse​ ​audience. 
 
Additionally,​ ​we​ ​realized​ ​attendees​ ​gained​ ​the​ ​most​ ​from​ ​the​ ​event​ ​when​ ​they​ ​were​ ​forced 
to​ ​think​ ​and​ ​apply​ ​their​ ​knowledge.​ ​Active​ ​participation​ ​always​ ​trumped​ ​over​ ​passive​ ​talks 
and​ ​presentations.  
 
These​ ​two​ ​insights​ ​led​ ​us​ ​to​ ​architectural​ ​group​ ​discussions,​ ​with​ ​some​ ​guidance​ ​from​ ​a 
knowledgeable​ ​moderator. 
Architectural​ ​Group​ ​Discussions 
Format
The​ ​format​ ​is​ ​fairly​ ​simple,​ ​and​ ​works​ ​like​ ​this:
1. Divide​ ​the​ ​audience​ ​into​ ​even​ ​number​ ​of​ ​groups.​ ​Ideally,​ ​six​ ​groups​ ​of​ ​about​ ​6-8​ ​people
work​ ​the​ ​best.​ ​You​ ​can​ ​scale​ ​up​ ​and​ ​down​ ​a​ ​bit.
2. Give​ ​two​ ​groups​ ​the​ ​same​ ​case​ ​study.​ ​So​ ​if​ ​you​ ​have​ ​6​ ​groups​ ​in​ ​total,​ ​you​ ​need​ ​3​ ​case
studies.​ ​Group​ ​1​ ​and​ ​2​ ​work​ ​on​ ​use​ ​case​ ​A,​ ​Groups​ ​3​ ​and​ ​4​ ​on​ ​use​ ​case​ ​B​ ​and​ ​so​ ​on.
3. Give​ ​the​ ​groups​ ​about​ ​20​ ​minutes​ ​to​ ​discuss​ ​the​ ​solution​ ​for​ ​the​ ​problem.
4. After​ ​20​ ​minutes,​ ​you​ ​start​ ​the​ ​presentations
5. First,​ ​moderator​ ​explains​ ​use​ ​case​ ​A​ ​so​ ​that​ ​groups​ ​3​ ​through​ ​6​ ​understand​ ​it
6. Then​ ​Group​ ​1​ ​presents​ ​their​ ​solution,​ ​followed​ ​by​ ​Group​ ​2.​ ​In​ ​this​ ​way,​ ​you​ ​have
potentially​ ​two​ ​different​ ​solutions​ ​presented
7. After​ ​this,​ ​the​ ​moderator​ ​intervenes​ ​and​ ​asks​ ​questions.​ ​At​ ​this​ ​point,​ ​the​ ​larger
audience​ ​can​ ​also​ ​interject​ ​and​ ​share​ ​their​ ​thoughts
8. Finally,​ ​the​ ​moderator​ ​summarizes​ ​the​ ​entire​ ​discussion.
9. Repeat​ ​for​ ​other​ ​2​ ​use​ ​cases​ ​with​ ​the​ ​remaining​ ​groups
Instructions​ ​to​ ​Participants
1. You​ ​have​ ​20​ ​minutes​ ​to​ ​discuss​ ​the​ ​solution,​ ​and​ ​2​ ​minutes​ ​to​ ​present​ ​your​ ​solution​ ​at
the​ ​end.​ ​The​ ​presentation​ ​is​ ​verbal,​ ​no​ ​slides.
2. Choose​ ​the​ ​best​ ​technology​ ​for​ ​the​ ​job,​ ​don’t​ ​be​ ​limited​ ​to​ ​just​ ​Redis
3. Some​ ​requirements​ ​may​ ​not​ ​be​ ​clear.​ ​Use​ ​your​ ​judgement,​ ​make​ ​some​ ​assumptions,
and​ ​build​ ​your​ ​solutions​ ​on​ ​the​ ​basis​ ​of​ ​those​ ​assumptions
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
4. Choose​ ​one​ ​person​ ​from​ ​your​ ​group​ ​as​ ​the​ ​presenter.​ ​The​ ​presenter​ ​will​ ​summarize​ ​the
solution​ ​and​ ​present​ ​it​ ​to​ ​the​ ​larger​ ​audience​ ​at​ ​the​ ​end.
Instructions​ ​for​ ​Moderator
1. This​ ​group​ ​discussion​ ​is​ ​purposefully​ ​open​ ​ended.​ ​You​ ​can​ ​never​ ​be​ ​sure​ ​of​ ​the
questions​ ​participants​ ​ask,​ ​or​ ​the​ ​solutions​ ​they​ ​present.​ ​Therefore,​ ​you​ ​really​ ​must​ ​have
deep​ ​knowledge​ ​to​ ​be​ ​able​ ​to​ ​moderate​ ​successfully
2. It​ ​is​ ​important​ ​to​ ​create​ ​groups​ ​randomly.​ ​In​ ​particular,​ ​participants​ ​from​ ​the​ ​same
company​ ​/​ ​similar​ ​backgrounds​ ​should​ ​be​ ​in​ ​different​ ​teams.​ ​In​ ​our​ ​conferences,​ ​we​ ​print
participant​ ​lanyards​ ​/​ ​badges​ ​in​ ​6​ ​different​ ​colours,​ ​and​ ​this​ ​determines​ ​the​ ​group​ ​you
belong​ ​to.
3. While​ ​the​ ​group​ ​discusses​ ​the​ ​solution,​ ​go​ ​around​ ​and​ ​speak​ ​to​ ​each​ ​team.​ ​Clarify​ ​the
use​ ​cases,​ ​and​ ​help​ ​them​ ​in​ ​making​ ​assumptions​ ​on​ ​the​ ​requirements.​ ​But​ ​do​ ​not
influence​ ​their​ ​solution,​ ​even​ ​if​ ​you​ ​know​ ​they​ ​are​ ​obviously​ ​wrong.
4. When​ ​teams​ ​present​ ​their​ ​solutions​ ​-​ ​maintain​ ​your​ ​private​ ​notes​ ​on​ ​the​ ​key
technologies​ ​/​ ​decisions​ ​that​ ​are​ ​being​ ​presented.
5. After​ ​both​ ​teams​ ​have​ ​presented,​ ​summarize​ ​both​ ​their​ ​solutions.​ ​Contrast​ ​the
technologies/approaches​ ​that​ ​are​ ​different​ ​between​ ​the​ ​teams.​ ​Bring​ ​to​ ​attention
particular​ ​approaches​ ​you​ ​disagree​ ​with
6. Then​ ​open​ ​up​ ​to​ ​the​ ​audience​ ​by​ ​asking​ ​pointed​ ​questions:
a. Is​ ​Kafka​ ​a​ ​good​ ​choice​ ​for​ ​running​ ​background​ ​jobs?
b. Do​ ​you​ ​think​ ​you​ ​should​ ​use​ ​sorted​ ​sets​ ​for​ ​storing​ ​frequently​ ​visited​ ​articles?
7. As​ ​much​ ​as​ ​possible,​ ​let​ ​the​ ​two​ ​teams​ ​and​ ​the​ ​audience​ ​arrive​ ​at​ ​a​ ​solution
8. Finally​ ​though,​ ​intervene​ ​and​ ​summarize​ ​the​ ​conversation​ ​:
a. For​ ​obviously​ ​wrong​ ​choices,​ ​explain​ ​why​ ​it​ ​is​ ​wrong​ ​and​ ​suggest​ ​a​ ​better
approach
b. For​ ​use​ ​cases​ ​that​ ​can​ ​be​ ​solved​ ​in​ ​multiple​ ​ways,​ ​explain​ ​the​ ​pros​ ​and​ ​cons​ ​of
each​ ​approach,​ ​and​ ​suggest​ ​under​ ​what​ ​circumstances​ ​one​ ​solution​ ​works​ ​better
than​ ​the​ ​other
c. For​ ​solutions​ ​that​ ​were​ ​correct​ ​-​ ​acknowledge​ ​the​ ​solution​ ​and​ ​give​ ​credit​ ​to​ ​the
teams
9. There​ ​will​ ​be​ ​distractions,​ ​people​ ​will​ ​ask​ ​tangential​ ​questions​ ​not​ ​related​ ​to​ ​the​ ​use
case.​ ​Use​ ​your​ ​judgement​ ​-​ ​if​ ​the​ ​question​ ​is​ ​relevant​ ​to​ ​the​ ​larger​ ​audience,​ ​answer​ ​it.​ ​If
it​ ​is​ ​very​ ​specific,​ ​discuss​ ​the​ ​question​ ​later​ ​with​ ​the​ ​individual.
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​MONITRON 
A​ ​monitoring​ ​company​ ​has​ ​deployed​ ​thousands​ ​of​ ​sensors​ ​across​ ​the​ ​country.​ ​These 
sensors​ ​monitor​ ​heavy​ ​machinery​ ​and​ ​constantly​ ​capture​ ​the​ ​following​ ​data: 
- GPS​ ​locations​ ​-​ ​latitudes​ ​/​ ​longitudes 
- Temperature 
- Vibration 
- Signal​ ​Strength 
- 20​ ​optional​ ​parameters,​ ​values​ ​​ ​between​ ​0.0​ ​to​ ​100.0​ ​double​ ​precision 
 
These​ ​data​ ​are​ ​sent​ ​over​ ​HTTP​ ​to​ ​a​ ​central​ ​location​ ​and​ ​are​ ​then​ ​written​ ​to​ ​a​ ​relation 
database. 
The​ ​relation​ ​database​ ​is​ ​now​ ​under​ ​heavy​ ​load​ ​and​ ​we​ ​are​ ​now​ ​losing​ ​the​ ​metrics. 
 
Additionally,​ ​the​ ​management​ ​wants​ ​a​ ​operational​ ​dashboard​ ​that​ ​shows​ ​the​ ​latest​ ​values 
for​ ​each​ ​sensor​ ​in​ ​a​ ​fast​ ​and​ ​efficient​ ​manner. 
 
As​ ​a​ ​consultant,​ ​how​ ​can​ ​you​ ​help​ ​this​ ​monitoring​ ​company​ ​to​ ​solve​ ​their​ ​problem? 
You​ ​do​ ​not​ ​have​ ​to​ ​use​ ​only​ ​Redis.​ ​Pick​ ​the​ ​best​ ​technolog 
y? 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​NAYA​ ​NEWS 
Naya​ ​News​ ​is​ ​a​ ​very​ ​popular​ ​offline​ ​newspaper. 
Recently,​ ​they​ ​launched​ ​a​ ​digital​ ​online​ ​version​ ​of​ ​their​ ​paper.​ ​Their​ ​website​ ​became​ ​an 
instant​ ​hit​ ​and​ ​they​ ​are​ ​now​ ​trying​ ​to​ ​scale​ ​/​ ​improve​ ​performance. 
 
Here​ ​are​ ​the​ ​key​ ​points: 
- About​ ​80%​ ​of​ ​their​ ​visitors​ ​view​ ​the​ ​articles​ ​anonymously 
- . 
- 20%​ ​login​ ​and​ ​they​ ​see​ ​personalized​ ​articles. 
- 5​ ​recommended​ ​articles​ ​are​ ​shown​ ​along​ ​with​ ​each​ ​article.​ ​These​ ​articles​ ​can 
change​ ​every​ ​5​ ​minutes​ ​and​ ​the​ ​database​ ​query​ ​to​ ​calculate​ ​this​ ​takes​ ​3​ ​sec​ ​to 
execute. 
 
How​ ​you​ ​recommend​ ​to​ ​architect​ ​the​ ​system​ ​so​ ​that​ ​the​ ​cache​ ​can​ ​be​ ​utilized​ ​the​ ​best. 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​RESIZER 
Resizer​ ​is​ ​an​ ​online​ ​image​ ​processing​ ​API. 
Clients​ ​can​ ​upload​ ​images.​ ​And​ ​​Resizer​​ ​can​ ​resize​ ​the​ ​images​ ​to​ ​the​ ​desired​ ​size.​ ​Clients 
pay​ ​for​ ​the​ ​services​ ​depending​ ​on​ ​the​ ​number​ ​of​ ​the​ ​API​ ​calls​ ​they​ ​make. 
 
Resizer​ ​has​ ​3​ ​challenges: 
1. How​ ​do​ ​you​ ​perform​ ​authentication​ ​and​ ​authorization​ ​at​ ​high​ ​scale? 
2. How​ ​do​ ​you​ ​prevent​ ​client​ ​A,​ ​from​ ​modifying​ ​images​ ​of​ ​client​ ​B? 
3. How​ ​do​ ​you​ ​rate​ ​limit​ ​free​ ​trier​ ​users,​ ​so​ ​that​ ​they​ ​do​ ​not​ ​abuse​ ​the​ ​system? 
4. How​ ​do​ ​you​ ​bill​ ​users​ ​at​ ​the​ ​end​ ​of​ ​every​ ​week? 
 
Their​ ​current​ ​situation​ ​uses​ ​MySQL,​ ​but​ ​they​ ​are​ ​now​ ​facing​ ​challenges​ ​scaling​ ​this 
solution. 
 
Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution? 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​mediaStream​ ​SOLUTION 
mediaStream​ ​is​ ​a​ ​large​ ​video​ ​management​ ​company.  
Users​ ​can​ ​upload​ ​videos,​ ​manage/convert​ ​into​ ​different​ ​resolutions/​ ​formats​ ​and​ ​share 
them. 
 
The​ ​user​ ​dashboard​ ​provides​ ​the​ ​following​ ​functionality: 
- User​ ​is​ ​able​ ​to​ ​upload​ ​high​ ​resolution​ ​video. 
- Select​ ​the​ ​multiple​ ​formats​ ​of​ ​conversions​ ​/​ ​​ ​transcoding​ ​the​ ​videos. 
- Then,​ ​parallel​ ​background​ ​jobs​ ​gets​ ​execution​ ​for​ ​video​ ​transcoding 
- User​ ​gets​ ​the​ ​real​ ​time​ ​update​ ​on​ ​the​ ​progress​ ​for​ ​transcoding​ ​jobs. 
- In​ ​case​ ​of​ ​heavy​ ​demand,​ ​the​ ​job​ ​can​ ​get​ ​queued​ ​up.​ ​In​ ​such​ ​cases,​ ​the​ ​user​ ​should 
get​ ​the​ ​queue​ ​status 
- Additionally,​ ​the​ ​estimated​ ​remaining​ ​time,​ ​is​ ​to​ ​be​ ​provided,​ ​based​ ​on​ ​the 
format​ ​and​ ​size,​ ​of​ ​the​ ​items​ ​ahead​ ​in​ ​the​ ​queue. 
 
Currently,​ ​their​ ​solution​ ​struggle​ ​to​ ​handle​ ​huge​ ​number​ ​of​ ​transcoding​ ​jobs​ ​and​ ​provide 
real​ ​time​ ​updates​ ​on​ ​the​ ​transcoding​ ​progress. 
 
Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution? 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​urbanStore​ ​Problem 
urbanStore​ ​is​ ​a​ ​leading​ ​clothing​ ​retail​ ​store,​ ​with​ ​1000+​ ​retail​ ​chains​ ​globally​ ​as​ ​well​ ​as​ ​an 
online​ ​portal.  
The​ ​key​ ​selling​ ​point​ ​is,​ ​that​ ​they​ ​keep​ ​huge​ ​variety​ ​of​ ​clothes​ ​and​ ​with​ ​limited​ ​quantity,​ ​so 
that​ ​the​ ​store​ ​always​ ​has​ ​new​ ​stuff​ ​to​ ​display. 
 
As​ ​the​ ​business​ ​is​ ​growing,​ ​they​ ​want​ ​to​ ​update​ ​their​ ​business​ ​strategy.​ ​As​ ​per​ ​the​ ​new 
business​ ​needs,​ ​they​ ​wanted​ ​to​ ​handle​ ​the​ ​following​ ​real​ ​time​ ​scenarios: 
- Users​ ​should​ ​be​ ​given​ ​about​ ​5​ ​recommendations​ ​based​ ​on​ ​what​ ​user​ ​is​ ​searching 
online. 
- The​ ​product​ ​inventory​ ​is​ ​limited​ ​and​ ​should​ ​get​ ​updated​ ​in​ ​real​ ​time. 
- The​ ​new​ ​pricing​ ​model,​ ​keeps​ ​updating​ ​the​ ​prices,​ ​discounts​ ​of​ ​each​ ​time,​ ​quite 
frequently,​ ​and​ ​it​ ​needs​ ​to​ ​be​ ​visible​ ​in​ ​all​ ​global​ ​retail​ ​outlets​ ​in​ ​real​ ​time. 
- Manage​ ​user​ ​score​ ​-​ ​Scoring​ ​business​ ​model​ ​has​ ​been​ ​devised​ ​and​ ​they​ ​want​ ​to​ ​use 
that​ ​to​ ​manage​ ​score​ ​of​ ​each​ ​user,​ ​based​ ​on​ ​his​ ​interests​ ​and​ ​purchasing​ ​habits. 
 
Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution? 
 
   
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
Use​ ​Case​ ​:​ ​​ ​savaari​ ​Problem 
Savaari​ ​is​ ​a​ ​leading​ ​taxi​ ​booking​ ​solution​ ​provider.​ ​Using​ ​their​ ​mobile​ ​app,​ ​users​ ​can​ ​search 
nearby​ ​taxis​ ​and​ ​book​ ​them.  
 
Following​ ​are​ ​the​ ​keys​ ​features​ ​of​ ​the​ ​customer​ ​support​ ​dashboard: 
- Able​ ​to​ ​identify​ ​taxis​ ​in​ ​a​ ​given​ ​location,​ ​in​ ​real​ ​time. 
- Manage​ ​communication​ ​with​ ​the​ ​driver.​ ​Such​ ​as​ ​chat,​ ​accept​ ​/​ ​decline​ ​rides. 
- Manage​ ​real​ ​time​ ​stats​ ​for​ ​a​ ​taxi,​ ​as​ ​in 
- Current​ ​location. 
- Any​ ​speed​ ​violations​ ​done​ ​by​ ​the​ ​driver. 
- How​ ​many​ ​successful​ ​rides​ ​done 
- Total​ ​amount​ ​of​ ​travel​ ​done,​ ​in​ ​miles​ ​and​ ​in​ ​hours. 
- Overall​ ​rating​ ​and​ ​feedbacks 
- Driver’s​ ​history 
 
The​ ​current​ ​solution​ ​is​ ​struggling​ ​to​ ​scale​ ​up,​ ​as​ ​the​ ​number​ ​of​ ​taxis​ ​they​ ​are​ ​managing​ ​in 
real​ ​time​ ​has​ ​increased​ ​to​ ​around​ ​12000. 
Some​ ​of​ ​the​ ​other​ ​challenges​ ​are: 
- Some​ ​of​ ​the​ ​drivers​ ​don’t​ ​get​ ​enough​ ​rides,​ ​while​ ​the​ ​others​ ​get. 
- Real​ ​time​ ​communication​ ​with​ ​the​ ​drivers​ ​in​ ​sluggish,​ ​especially,​ ​during​ ​repeated 
speed​ ​violations,​ ​has​ ​real​ ​time​ ​dashboard​ ​is​ ​not​ ​performant. 
- Users​ ​are​ ​not​ ​able​ ​to​ ​find​ ​the​ ​nearby​ ​taxis​ ​quickly,​ ​as​ ​the​ ​api​ ​is​ ​performing​ ​slowly, 
during​ ​peak​ ​hours. 
 
Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution? 
 
©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 

More Related Content

PDF
Redis Use Cases - Performance & Scalability
PDF
Redis as database - HashedIn
PDF
Redis memory optimization sripathi, CTO hashedin
PPTX
Azure HDInsight
PPTX
Securing your Big Data Environments in the Cloud
PDF
Apache Druid®: A Dance of Distributed Processes
PDF
How To Become A Big Data Engineer? Edureka
PPTX
Don’t Get Caught in a PCI Pickle: Meet Compliance and Protect Payment Card Da...
Redis Use Cases - Performance & Scalability
Redis as database - HashedIn
Redis memory optimization sripathi, CTO hashedin
Azure HDInsight
Securing your Big Data Environments in the Cloud
Apache Druid®: A Dance of Distributed Processes
How To Become A Big Data Engineer? Edureka
Don’t Get Caught in a PCI Pickle: Meet Compliance and Protect Payment Card Da...

What's hot (20)

PDF
Hadoop Tutorial | Big Data Hadoop Tutorial For Beginners | Hadoop Certificati...
PPTX
How to plan a successful Digital Signage Campaign in 5 steps
PDF
DataStax Training – Everything you need to become a Cassandra Rockstar
PDF
Can My Inventory Survive Eventual Consistency?
PDF
Building Killr Applications with DSE
PPTX
Real-Time Analytics in Transactional Applications by Brian Bulkowski
PPTX
Webinar: The Performance Challenge: Providing an Amazing Customer Experience ...
PPTX
Big Data Fundamentals
PDF
Aerospike AdTech Gets Hacked in Lower Manhattan
PDF
How TrafficGuard uses Druid to Fight Ad Fraud and Bots
PDF
August meetup - All about Apache Druid
PDF
Building Killr Applications with DataStax Enterprise
PPTX
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
PDF
Druid in Spot Instances
PDF
Bi with apache hadoop(en)
PDF
Hortonworks Big Data & Hadoop
PPTX
Big data and hadoop
PDF
Logical-DataWarehouse-Alluxio-meetup
PPT
Intro to big data and hadoop ubc cs lecture series - g fawkes
PDF
What Is Hadoop | Hadoop Tutorial For Beginners | Edureka
Hadoop Tutorial | Big Data Hadoop Tutorial For Beginners | Hadoop Certificati...
How to plan a successful Digital Signage Campaign in 5 steps
DataStax Training – Everything you need to become a Cassandra Rockstar
Can My Inventory Survive Eventual Consistency?
Building Killr Applications with DSE
Real-Time Analytics in Transactional Applications by Brian Bulkowski
Webinar: The Performance Challenge: Providing an Amazing Customer Experience ...
Big Data Fundamentals
Aerospike AdTech Gets Hacked in Lower Manhattan
How TrafficGuard uses Druid to Fight Ad Fraud and Bots
August meetup - All about Apache Druid
Building Killr Applications with DataStax Enterprise
ProtectWise Revolutionizes Enterprise Network Security in the Cloud with Data...
Druid in Spot Instances
Bi with apache hadoop(en)
Hortonworks Big Data & Hadoop
Big data and hadoop
Logical-DataWarehouse-Alluxio-meetup
Intro to big data and hadoop ubc cs lecture series - g fawkes
What Is Hadoop | Hadoop Tutorial For Beginners | Edureka
Ad

Similar to Redis Workshop for Architects - Use Cases (20)

PPT
A community of developers stimulating innovation in uk higher education
PPT
Week8 Topic1 Translate Business Needs Into Technical Requirements
ODP
Requirements Analysis
PDF
Cool Vendors Collaboration Social Software
PDF
12th Plan Hackathon Inauguration - 06 April 2013
PDF
Hadoop innovation index
PDF
Systems Analysis and Design in a Changing World 7th Edition Satzinger Solutio...
PPT
Os Nolen Gebhart
DOCX
Mingle box - Online Job seeking System
KEY
The Changing Role of the Developer in HE
PPTX
Orientation of students towards Hackathon.
PPT
W3 requirements engineering processes
PPTX
Requirement Analysis and Modeling in Software Engineering.pptx
PPT
Requirements Engineering Processes in Software Engineering SE6
PPTX
Software Architecture Standard IEEE 1471
DOC
Bug Tracking Java Project
PPT
vu-re-lecture-45 requirement engineering.ppt
PPTX
Socio organizational issues ppt
PDF
Systems Analysis and Design in a Changing World 7th Edition Satzinger Solutio...
A community of developers stimulating innovation in uk higher education
Week8 Topic1 Translate Business Needs Into Technical Requirements
Requirements Analysis
Cool Vendors Collaboration Social Software
12th Plan Hackathon Inauguration - 06 April 2013
Hadoop innovation index
Systems Analysis and Design in a Changing World 7th Edition Satzinger Solutio...
Os Nolen Gebhart
Mingle box - Online Job seeking System
The Changing Role of the Developer in HE
Orientation of students towards Hackathon.
W3 requirements engineering processes
Requirement Analysis and Modeling in Software Engineering.pptx
Requirements Engineering Processes in Software Engineering SE6
Software Architecture Standard IEEE 1471
Bug Tracking Java Project
vu-re-lecture-45 requirement engineering.ppt
Socio organizational issues ppt
Systems Analysis and Design in a Changing World 7th Edition Satzinger Solutio...
Ad

Recently uploaded (20)

PDF
STKI Israel Market Study 2025 version august
PDF
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
PPT
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
PDF
NewMind AI Weekly Chronicles – August ’25 Week III
PPTX
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
PPT
Module 1.ppt Iot fundamentals and Architecture
PDF
Developing a website for English-speaking practice to English as a foreign la...
PDF
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
PPTX
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
PDF
Hindi spoken digit analysis for native and non-native speakers
PPTX
Configure Apache Mutual Authentication
PDF
Convolutional neural network based encoder-decoder for efficient real-time ob...
PDF
1 - Historical Antecedents, Social Consideration.pdf
PDF
Getting started with AI Agents and Multi-Agent Systems
PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
UiPath Agentic Automation session 1: RPA to Agents
PDF
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
PPTX
Final SEM Unit 1 for mit wpu at pune .pptx
PDF
Credit Without Borders: AI and Financial Inclusion in Bangladesh
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
STKI Israel Market Study 2025 version august
From MVP to Full-Scale Product A Startup’s Software Journey.pdf
Galois Field Theory of Risk: A Perspective, Protocol, and Mathematical Backgr...
NewMind AI Weekly Chronicles – August ’25 Week III
MicrosoftCybserSecurityReferenceArchitecture-April-2025.pptx
Module 1.ppt Iot fundamentals and Architecture
Developing a website for English-speaking practice to English as a foreign la...
A Late Bloomer's Guide to GenAI: Ethics, Bias, and Effective Prompting - Boha...
AI IN MARKETING- PRESENTED BY ANWAR KABIR 1st June 2025.pptx
Hindi spoken digit analysis for native and non-native speakers
Configure Apache Mutual Authentication
Convolutional neural network based encoder-decoder for efficient real-time ob...
1 - Historical Antecedents, Social Consideration.pdf
Getting started with AI Agents and Multi-Agent Systems
A comparative study of natural language inference in Swahili using monolingua...
UiPath Agentic Automation session 1: RPA to Agents
Hybrid horned lizard optimization algorithm-aquila optimizer for DC motor
Final SEM Unit 1 for mit wpu at pune .pptx
Credit Without Borders: AI and Financial Inclusion in Bangladesh
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf

Redis Workshop for Architects - Use Cases

  • 1. Redis​ ​Workshop  for​ ​Architects    ©​ ​​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 2. Background  HashedIn​ ​organizes​ ​Redis​ ​conferences​ ​and​ ​meetups​ ​in​ ​multiple​ ​cities.​ ​These​ ​events​ ​attract  attendees​ ​from​ ​diverse​ ​backgrounds​ ​-​ ​developers,​ ​solution​ ​architects,​ ​managers,​ ​qa,  devops,​ ​system​ ​administrators,​ ​and​ ​HR/recruiters.​ ​It​ ​becomes​ ​extremely​ ​challenging​ ​to  arrange​ ​talks​ ​/​ ​presentations​ ​that​ ​cater​ ​to​ ​such​ ​a​ ​diverse​ ​audience.    Additionally,​ ​we​ ​realized​ ​attendees​ ​gained​ ​the​ ​most​ ​from​ ​the​ ​event​ ​when​ ​they​ ​were​ ​forced  to​ ​think​ ​and​ ​apply​ ​their​ ​knowledge.​ ​Active​ ​participation​ ​always​ ​trumped​ ​over​ ​passive​ ​talks  and​ ​presentations.     These​ ​two​ ​insights​ ​led​ ​us​ ​to​ ​architectural​ ​group​ ​discussions,​ ​with​ ​some​ ​guidance​ ​from​ ​a  knowledgeable​ ​moderator.  Architectural​ ​Group​ ​Discussions  Format The​ ​format​ ​is​ ​fairly​ ​simple,​ ​and​ ​works​ ​like​ ​this: 1. Divide​ ​the​ ​audience​ ​into​ ​even​ ​number​ ​of​ ​groups.​ ​Ideally,​ ​six​ ​groups​ ​of​ ​about​ ​6-8​ ​people work​ ​the​ ​best.​ ​You​ ​can​ ​scale​ ​up​ ​and​ ​down​ ​a​ ​bit. 2. Give​ ​two​ ​groups​ ​the​ ​same​ ​case​ ​study.​ ​So​ ​if​ ​you​ ​have​ ​6​ ​groups​ ​in​ ​total,​ ​you​ ​need​ ​3​ ​case studies.​ ​Group​ ​1​ ​and​ ​2​ ​work​ ​on​ ​use​ ​case​ ​A,​ ​Groups​ ​3​ ​and​ ​4​ ​on​ ​use​ ​case​ ​B​ ​and​ ​so​ ​on. 3. Give​ ​the​ ​groups​ ​about​ ​20​ ​minutes​ ​to​ ​discuss​ ​the​ ​solution​ ​for​ ​the​ ​problem. 4. After​ ​20​ ​minutes,​ ​you​ ​start​ ​the​ ​presentations 5. First,​ ​moderator​ ​explains​ ​use​ ​case​ ​A​ ​so​ ​that​ ​groups​ ​3​ ​through​ ​6​ ​understand​ ​it 6. Then​ ​Group​ ​1​ ​presents​ ​their​ ​solution,​ ​followed​ ​by​ ​Group​ ​2.​ ​In​ ​this​ ​way,​ ​you​ ​have potentially​ ​two​ ​different​ ​solutions​ ​presented 7. After​ ​this,​ ​the​ ​moderator​ ​intervenes​ ​and​ ​asks​ ​questions.​ ​At​ ​this​ ​point,​ ​the​ ​larger audience​ ​can​ ​also​ ​interject​ ​and​ ​share​ ​their​ ​thoughts 8. Finally,​ ​the​ ​moderator​ ​summarizes​ ​the​ ​entire​ ​discussion. 9. Repeat​ ​for​ ​other​ ​2​ ​use​ ​cases​ ​with​ ​the​ ​remaining​ ​groups Instructions​ ​to​ ​Participants 1. You​ ​have​ ​20​ ​minutes​ ​to​ ​discuss​ ​the​ ​solution,​ ​and​ ​2​ ​minutes​ ​to​ ​present​ ​your​ ​solution​ ​at the​ ​end.​ ​The​ ​presentation​ ​is​ ​verbal,​ ​no​ ​slides. 2. Choose​ ​the​ ​best​ ​technology​ ​for​ ​the​ ​job,​ ​don’t​ ​be​ ​limited​ ​to​ ​just​ ​Redis 3. Some​ ​requirements​ ​may​ ​not​ ​be​ ​clear.​ ​Use​ ​your​ ​judgement,​ ​make​ ​some​ ​assumptions, and​ ​build​ ​your​ ​solutions​ ​on​ ​the​ ​basis​ ​of​ ​those​ ​assumptions ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 3. 4. Choose​ ​one​ ​person​ ​from​ ​your​ ​group​ ​as​ ​the​ ​presenter.​ ​The​ ​presenter​ ​will​ ​summarize​ ​the solution​ ​and​ ​present​ ​it​ ​to​ ​the​ ​larger​ ​audience​ ​at​ ​the​ ​end. Instructions​ ​for​ ​Moderator 1. This​ ​group​ ​discussion​ ​is​ ​purposefully​ ​open​ ​ended.​ ​You​ ​can​ ​never​ ​be​ ​sure​ ​of​ ​the questions​ ​participants​ ​ask,​ ​or​ ​the​ ​solutions​ ​they​ ​present.​ ​Therefore,​ ​you​ ​really​ ​must​ ​have deep​ ​knowledge​ ​to​ ​be​ ​able​ ​to​ ​moderate​ ​successfully 2. It​ ​is​ ​important​ ​to​ ​create​ ​groups​ ​randomly.​ ​In​ ​particular,​ ​participants​ ​from​ ​the​ ​same company​ ​/​ ​similar​ ​backgrounds​ ​should​ ​be​ ​in​ ​different​ ​teams.​ ​In​ ​our​ ​conferences,​ ​we​ ​print participant​ ​lanyards​ ​/​ ​badges​ ​in​ ​6​ ​different​ ​colours,​ ​and​ ​this​ ​determines​ ​the​ ​group​ ​you belong​ ​to. 3. While​ ​the​ ​group​ ​discusses​ ​the​ ​solution,​ ​go​ ​around​ ​and​ ​speak​ ​to​ ​each​ ​team.​ ​Clarify​ ​the use​ ​cases,​ ​and​ ​help​ ​them​ ​in​ ​making​ ​assumptions​ ​on​ ​the​ ​requirements.​ ​But​ ​do​ ​not influence​ ​their​ ​solution,​ ​even​ ​if​ ​you​ ​know​ ​they​ ​are​ ​obviously​ ​wrong. 4. When​ ​teams​ ​present​ ​their​ ​solutions​ ​-​ ​maintain​ ​your​ ​private​ ​notes​ ​on​ ​the​ ​key technologies​ ​/​ ​decisions​ ​that​ ​are​ ​being​ ​presented. 5. After​ ​both​ ​teams​ ​have​ ​presented,​ ​summarize​ ​both​ ​their​ ​solutions.​ ​Contrast​ ​the technologies/approaches​ ​that​ ​are​ ​different​ ​between​ ​the​ ​teams.​ ​Bring​ ​to​ ​attention particular​ ​approaches​ ​you​ ​disagree​ ​with 6. Then​ ​open​ ​up​ ​to​ ​the​ ​audience​ ​by​ ​asking​ ​pointed​ ​questions: a. Is​ ​Kafka​ ​a​ ​good​ ​choice​ ​for​ ​running​ ​background​ ​jobs? b. Do​ ​you​ ​think​ ​you​ ​should​ ​use​ ​sorted​ ​sets​ ​for​ ​storing​ ​frequently​ ​visited​ ​articles? 7. As​ ​much​ ​as​ ​possible,​ ​let​ ​the​ ​two​ ​teams​ ​and​ ​the​ ​audience​ ​arrive​ ​at​ ​a​ ​solution 8. Finally​ ​though,​ ​intervene​ ​and​ ​summarize​ ​the​ ​conversation​ ​: a. For​ ​obviously​ ​wrong​ ​choices,​ ​explain​ ​why​ ​it​ ​is​ ​wrong​ ​and​ ​suggest​ ​a​ ​better approach b. For​ ​use​ ​cases​ ​that​ ​can​ ​be​ ​solved​ ​in​ ​multiple​ ​ways,​ ​explain​ ​the​ ​pros​ ​and​ ​cons​ ​of each​ ​approach,​ ​and​ ​suggest​ ​under​ ​what​ ​circumstances​ ​one​ ​solution​ ​works​ ​better than​ ​the​ ​other c. For​ ​solutions​ ​that​ ​were​ ​correct​ ​-​ ​acknowledge​ ​the​ ​solution​ ​and​ ​give​ ​credit​ ​to​ ​the teams 9. There​ ​will​ ​be​ ​distractions,​ ​people​ ​will​ ​ask​ ​tangential​ ​questions​ ​not​ ​related​ ​to​ ​the​ ​use case.​ ​Use​ ​your​ ​judgement​ ​-​ ​if​ ​the​ ​question​ ​is​ ​relevant​ ​to​ ​the​ ​larger​ ​audience,​ ​answer​ ​it.​ ​If it​ ​is​ ​very​ ​specific,​ ​discuss​ ​the​ ​question​ ​later​ ​with​ ​the​ ​individual.       ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 4. Use​ ​Case​ ​:​ ​MONITRON  A​ ​monitoring​ ​company​ ​has​ ​deployed​ ​thousands​ ​of​ ​sensors​ ​across​ ​the​ ​country.​ ​These  sensors​ ​monitor​ ​heavy​ ​machinery​ ​and​ ​constantly​ ​capture​ ​the​ ​following​ ​data:  - GPS​ ​locations​ ​-​ ​latitudes​ ​/​ ​longitudes  - Temperature  - Vibration  - Signal​ ​Strength  - 20​ ​optional​ ​parameters,​ ​values​ ​​ ​between​ ​0.0​ ​to​ ​100.0​ ​double​ ​precision    These​ ​data​ ​are​ ​sent​ ​over​ ​HTTP​ ​to​ ​a​ ​central​ ​location​ ​and​ ​are​ ​then​ ​written​ ​to​ ​a​ ​relation  database.  The​ ​relation​ ​database​ ​is​ ​now​ ​under​ ​heavy​ ​load​ ​and​ ​we​ ​are​ ​now​ ​losing​ ​the​ ​metrics.    Additionally,​ ​the​ ​management​ ​wants​ ​a​ ​operational​ ​dashboard​ ​that​ ​shows​ ​the​ ​latest​ ​values  for​ ​each​ ​sensor​ ​in​ ​a​ ​fast​ ​and​ ​efficient​ ​manner.    As​ ​a​ ​consultant,​ ​how​ ​can​ ​you​ ​help​ ​this​ ​monitoring​ ​company​ ​to​ ​solve​ ​their​ ​problem?  You​ ​do​ ​not​ ​have​ ​to​ ​use​ ​only​ ​Redis.​ ​Pick​ ​the​ ​best​ ​technolog  y?        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 5. Use​ ​Case​ ​:​ ​NAYA​ ​NEWS  Naya​ ​News​ ​is​ ​a​ ​very​ ​popular​ ​offline​ ​newspaper.  Recently,​ ​they​ ​launched​ ​a​ ​digital​ ​online​ ​version​ ​of​ ​their​ ​paper.​ ​Their​ ​website​ ​became​ ​an  instant​ ​hit​ ​and​ ​they​ ​are​ ​now​ ​trying​ ​to​ ​scale​ ​/​ ​improve​ ​performance.    Here​ ​are​ ​the​ ​key​ ​points:  - About​ ​80%​ ​of​ ​their​ ​visitors​ ​view​ ​the​ ​articles​ ​anonymously  - .  - 20%​ ​login​ ​and​ ​they​ ​see​ ​personalized​ ​articles.  - 5​ ​recommended​ ​articles​ ​are​ ​shown​ ​along​ ​with​ ​each​ ​article.​ ​These​ ​articles​ ​can  change​ ​every​ ​5​ ​minutes​ ​and​ ​the​ ​database​ ​query​ ​to​ ​calculate​ ​this​ ​takes​ ​3​ ​sec​ ​to  execute.    How​ ​you​ ​recommend​ ​to​ ​architect​ ​the​ ​system​ ​so​ ​that​ ​the​ ​cache​ ​can​ ​be​ ​utilized​ ​the​ ​best.        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 6. Use​ ​Case​ ​:​ ​RESIZER  Resizer​ ​is​ ​an​ ​online​ ​image​ ​processing​ ​API.  Clients​ ​can​ ​upload​ ​images.​ ​And​ ​​Resizer​​ ​can​ ​resize​ ​the​ ​images​ ​to​ ​the​ ​desired​ ​size.​ ​Clients  pay​ ​for​ ​the​ ​services​ ​depending​ ​on​ ​the​ ​number​ ​of​ ​the​ ​API​ ​calls​ ​they​ ​make.    Resizer​ ​has​ ​3​ ​challenges:  1. How​ ​do​ ​you​ ​perform​ ​authentication​ ​and​ ​authorization​ ​at​ ​high​ ​scale?  2. How​ ​do​ ​you​ ​prevent​ ​client​ ​A,​ ​from​ ​modifying​ ​images​ ​of​ ​client​ ​B?  3. How​ ​do​ ​you​ ​rate​ ​limit​ ​free​ ​trier​ ​users,​ ​so​ ​that​ ​they​ ​do​ ​not​ ​abuse​ ​the​ ​system?  4. How​ ​do​ ​you​ ​bill​ ​users​ ​at​ ​the​ ​end​ ​of​ ​every​ ​week?    Their​ ​current​ ​situation​ ​uses​ ​MySQL,​ ​but​ ​they​ ​are​ ​now​ ​facing​ ​challenges​ ​scaling​ ​this  solution.    Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution?        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 7. Use​ ​Case​ ​:​ ​mediaStream​ ​SOLUTION  mediaStream​ ​is​ ​a​ ​large​ ​video​ ​management​ ​company.   Users​ ​can​ ​upload​ ​videos,​ ​manage/convert​ ​into​ ​different​ ​resolutions/​ ​formats​ ​and​ ​share  them.    The​ ​user​ ​dashboard​ ​provides​ ​the​ ​following​ ​functionality:  - User​ ​is​ ​able​ ​to​ ​upload​ ​high​ ​resolution​ ​video.  - Select​ ​the​ ​multiple​ ​formats​ ​of​ ​conversions​ ​/​ ​​ ​transcoding​ ​the​ ​videos.  - Then,​ ​parallel​ ​background​ ​jobs​ ​gets​ ​execution​ ​for​ ​video​ ​transcoding  - User​ ​gets​ ​the​ ​real​ ​time​ ​update​ ​on​ ​the​ ​progress​ ​for​ ​transcoding​ ​jobs.  - In​ ​case​ ​of​ ​heavy​ ​demand,​ ​the​ ​job​ ​can​ ​get​ ​queued​ ​up.​ ​In​ ​such​ ​cases,​ ​the​ ​user​ ​should  get​ ​the​ ​queue​ ​status  - Additionally,​ ​the​ ​estimated​ ​remaining​ ​time,​ ​is​ ​to​ ​be​ ​provided,​ ​based​ ​on​ ​the  format​ ​and​ ​size,​ ​of​ ​the​ ​items​ ​ahead​ ​in​ ​the​ ​queue.    Currently,​ ​their​ ​solution​ ​struggle​ ​to​ ​handle​ ​huge​ ​number​ ​of​ ​transcoding​ ​jobs​ ​and​ ​provide  real​ ​time​ ​updates​ ​on​ ​the​ ​transcoding​ ​progress.    Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution?        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 8. Use​ ​Case​ ​:​ ​urbanStore​ ​Problem  urbanStore​ ​is​ ​a​ ​leading​ ​clothing​ ​retail​ ​store,​ ​with​ ​1000+​ ​retail​ ​chains​ ​globally​ ​as​ ​well​ ​as​ ​an  online​ ​portal.   The​ ​key​ ​selling​ ​point​ ​is,​ ​that​ ​they​ ​keep​ ​huge​ ​variety​ ​of​ ​clothes​ ​and​ ​with​ ​limited​ ​quantity,​ ​so  that​ ​the​ ​store​ ​always​ ​has​ ​new​ ​stuff​ ​to​ ​display.    As​ ​the​ ​business​ ​is​ ​growing,​ ​they​ ​want​ ​to​ ​update​ ​their​ ​business​ ​strategy.​ ​As​ ​per​ ​the​ ​new  business​ ​needs,​ ​they​ ​wanted​ ​to​ ​handle​ ​the​ ​following​ ​real​ ​time​ ​scenarios:  - Users​ ​should​ ​be​ ​given​ ​about​ ​5​ ​recommendations​ ​based​ ​on​ ​what​ ​user​ ​is​ ​searching  online.  - The​ ​product​ ​inventory​ ​is​ ​limited​ ​and​ ​should​ ​get​ ​updated​ ​in​ ​real​ ​time.  - The​ ​new​ ​pricing​ ​model,​ ​keeps​ ​updating​ ​the​ ​prices,​ ​discounts​ ​of​ ​each​ ​time,​ ​quite  frequently,​ ​and​ ​it​ ​needs​ ​to​ ​be​ ​visible​ ​in​ ​all​ ​global​ ​retail​ ​outlets​ ​in​ ​real​ ​time.  - Manage​ ​user​ ​score​ ​-​ ​Scoring​ ​business​ ​model​ ​has​ ​been​ ​devised​ ​and​ ​they​ ​want​ ​to​ ​use  that​ ​to​ ​manage​ ​score​ ​of​ ​each​ ​user,​ ​based​ ​on​ ​his​ ​interests​ ​and​ ​purchasing​ ​habits.    Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution?        ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd. 
  • 9. Use​ ​Case​ ​:​ ​​ ​savaari​ ​Problem  Savaari​ ​is​ ​a​ ​leading​ ​taxi​ ​booking​ ​solution​ ​provider.​ ​Using​ ​their​ ​mobile​ ​app,​ ​users​ ​can​ ​search  nearby​ ​taxis​ ​and​ ​book​ ​them.     Following​ ​are​ ​the​ ​keys​ ​features​ ​of​ ​the​ ​customer​ ​support​ ​dashboard:  - Able​ ​to​ ​identify​ ​taxis​ ​in​ ​a​ ​given​ ​location,​ ​in​ ​real​ ​time.  - Manage​ ​communication​ ​with​ ​the​ ​driver.​ ​Such​ ​as​ ​chat,​ ​accept​ ​/​ ​decline​ ​rides.  - Manage​ ​real​ ​time​ ​stats​ ​for​ ​a​ ​taxi,​ ​as​ ​in  - Current​ ​location.  - Any​ ​speed​ ​violations​ ​done​ ​by​ ​the​ ​driver.  - How​ ​many​ ​successful​ ​rides​ ​done  - Total​ ​amount​ ​of​ ​travel​ ​done,​ ​in​ ​miles​ ​and​ ​in​ ​hours.  - Overall​ ​rating​ ​and​ ​feedbacks  - Driver’s​ ​history    The​ ​current​ ​solution​ ​is​ ​struggling​ ​to​ ​scale​ ​up,​ ​as​ ​the​ ​number​ ​of​ ​taxis​ ​they​ ​are​ ​managing​ ​in  real​ ​time​ ​has​ ​increased​ ​to​ ​around​ ​12000.  Some​ ​of​ ​the​ ​other​ ​challenges​ ​are:  - Some​ ​of​ ​the​ ​drivers​ ​don’t​ ​get​ ​enough​ ​rides,​ ​while​ ​the​ ​others​ ​get.  - Real​ ​time​ ​communication​ ​with​ ​the​ ​drivers​ ​in​ ​sluggish,​ ​especially,​ ​during​ ​repeated  speed​ ​violations,​ ​has​ ​real​ ​time​ ​dashboard​ ​is​ ​not​ ​performant.  - Users​ ​are​ ​not​ ​able​ ​to​ ​find​ ​the​ ​nearby​ ​taxis​ ​quickly,​ ​as​ ​the​ ​api​ ​is​ ​performing​ ​slowly,  during​ ​peak​ ​hours.    Can​ ​you​ ​help​ ​them​ ​architect​ ​this​ ​solution?    ©​ ​2017​ ​HashedIn​ ​Technologies​ ​Pvt.​ ​Ltd.