官术网_书友最值得收藏!

Starting out as usual

In most modern software systems, data is key. In traditional architectures, the role of persisting and providing access to your system's data tends to fall to a relational database. Typically, this is a monolithic beast, perhaps with a degree of replication. However, this tends to be more for resilience rather than performance or load distribution.

For example, here is what a traditional architecture might look like (which hopefully looks rather familiar):

This presents us with an issue in terms of application scalability in that it is relatively easy to scale our application layer by throwing more hardware to increase the processing capacity. However, the monolithic constraints of the data layer will only allow us to go so far before diminishing returns or resource saturation stunts further performance increases. So, what can we do to address this?

In the past and in legacy architectures, the only solution to this issue would be to potentially increase the performance capability of the database infrastructure by either buying a bigger, faster server, or further tweaking and fettling the utilization of the available resources. Both options are dramatic, either in terms of financial cost and/or manpower. So, what else could we do?

主站蜘蛛池模板: 绵竹市| 迁安市| 新丰县| 玉田县| 登封市| 玉田县| 茂名市| 唐海县| 五大连池市| 武汉市| 宜城市| 娄烦县| 元氏县| 抚远县| 剑阁县| 乌拉特后旗| 京山县| 三穗县| 尤溪县| 资源县| 寿阳县| 邵阳县| 睢宁县| 南丹县| 利津县| 增城市| 丹棱县| 共和县| 昭觉县| 黑龙江省| 民乐县| 高陵县| 开阳县| 揭阳市| 揭西县| 瓮安县| 阿尔山市| 云霄县| 宁海县| 桦南县| 永平县|