Chapter 10. Distributed Data Access

Monday, January 3, 12:43

“Now that we’ve assigned ownership of the expert profile table to the User Management Service,” said Sydney, “how should the Ticket Assignment Service get to the expert location and skills data? As I said before, with the number of reads it does to the database, it’s really not feasible to make a remote call every time it needs to query the table.”

“Can you modify the way the assignment algorithm works so that we can reduce the number of queries it needs?” asked Addison.

“Beats me,” replied Sydney. “Taylen’s the one who usually maintains those algorithms.”

Addison and Sydney met with Taylen to discuss the data access issue and to see if Taylen could modify the expert assignment algorithms to reduce the nimber of database calls to the expert profile table.

“Are you kidding me?” asked Taylen. “There’s no way I can rewrite the assignment algorithms to do what you are asking. Absolutely no way at all.”

“But our only other option is to make remote calls to the User Management Service every time the assignment algorithm needs expert data,” said Addison.

“What?” screamed Taylen. “We can’t do that!”

“That what I said as well,” said Sydney. “That means we are back to square one again. This distributed architecture stuff is hard. I hate to say this, but I am actually starting to miss the monolithic application. Wait, I know. What if we made messaging calls to the User Maintenance Service instead of using REST?”

“That’s the same ...

Get Software Architecture: The Hard Parts now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.