Sanjaya – The Hottest Trending NEWS Application

                     node js phone gap memcached

                     In previous articles we have harvested Twitter Trends and Google Hot Trends using Spring Batch. Meanwhile, I got an idea to create a NEWS app(for smart phones & tablets) which will use the crawled trending topics to generate the NEWS. Here is the thought process.

  • When something happens around us, people shares the information to their friends using tweets and searches more on the google. By using the crawled trending topics and the twitter tweets search, we can generate the trending tweets.
  • Google provides the hot searches and the associated content.

With the above two points, the application will get the content. Now Its time to name the app. I want to name this APP as “Sanjaya“, the thought process to come up with that name is given below.

Sanjaya is a character from the ancient Indian historic battle Mahābhārata, who has the gift of seeing events at a distance (divya-drishti), narrates the events of the battle between the Kauravas and the Pandavas to the blind king Dhrtarastra”.

Now, why I took decision to create an app than website? Here is the justification.

2014-Sessions-Growth-vF2

 

The above stats tells”It’s APP world“, mobile app is more reachable than web. The kind of application where we are targeting audience with hot news, the content should reach to the audience very quickly.

Now its time to see the system architecture of the “Sanjaya” app.

Sanjaya

The system architecture has a node js server to harvest the trends and the NEWS. The other node js server form is backed up by the load balancer which will serve content to end users. The NEWS content is maintained in Memcached server.

Now, let us see the technology stack proposed for “Sanjaya“.

Sanjaya Technology Stack

Now let me justify the technology stack. Before getting into the details, I want to make the technology stack which doesn’t require any learning curve for the web developers. Keeping that in mind I have chosen all the technologies which can be used with HTML, CSS and Javascript knowledge.

Node JS: Event-driven I/O serverside JavaScript environment and which will be scalable(Any one can learn and work with java script knowledge).

Express JS: The node services which will expose as REST services. PhoneGap will consume the REST services.

Memcached: The cache to store the trends and NEWS content. Here, particularly I have chosen as it is simple to use and the data is so volatile. I don’t want to persist the content. Evict the content on specific intervals.

That is high level overview of the application. If any one want to provide any insights, place it as part of comments.

 

Siva Janapati is an Architect with experience in building Cloud Native Microservices architectures, Reactive Systems, Large scale distributed systems, and Serverless Systems. Siva has hands-on in architecture, design, and implementation of scalable systems using Cloud, Java, Go lang, Apache Kafka, Apache Solr, Spring, Spring Boot, Lightbend reactive tech stack, APIGEE edge & on-premise and other open-source, proprietary technologies. Expertise working with and building RESTful, GraphQL APIs. He has successfully delivered multiple applications in retail, telco, and financial services domains. He manages the GitHub(https://github.com/2013techsmarts) where he put the source code of his work related to his blog posts.

Tagged with: , , , ,
Posted in Tools

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Dzone.com
DZone

DZone MVB

Java Code Geeks
Java Code Geeks
OpenSourceForYou