【问题标题】:Java Project Architecture Samples [closed]Java 项目架构示例 [关闭]
【发布时间】:2017-06-03 15:02:01
【问题描述】:

什么是最好的书,基于 Java、JEE、Rest、Spring 等设计良好项目架构的资源。我非常了解所有技术和最佳实践,但是没有人可以给我提要回到我的应用程序的架构问题。特别是在并发和多线程部分,我总是怀疑这是否是解决问题的最佳方法。不幸的是,我在 INTERNET 上搜索并找不到任何关注架构而非特定技术的示例或参考项目。只要。例如。您可以找到数以百万计的关于休息的表述,但没有关于您应该如何在休息环境中处理多线程的信息。等等。如果您能推荐任何书籍、材料或参考代码,我将不胜感激。谢谢

【问题讨论】:

    标签: java multithreading jakarta-ee architecture


    【解决方案1】:

    我觉得有用的书是

    1> Martin Fowler 的企业集成模式

    2> Brian Goetz 的 Java 并发实践

    3> 由 BOB 叔叔清理代码

    如果您正在处理遗留系统并尝试为您的应用程序找到最佳架构,这将有所帮助。没有通用的适合所有大小的书或博客可以放下。架构决策非常特定于您设计的应用程序。最好的方法是不要真正考虑过早地预测什么,而是根据开放封闭原则保持足够的灵活性以应对变化。

    以您将要开发的应用程序为例,但您仍然不确定基础架构团队要设置的网络拓扑类型,即循环负载平衡器或粘性会话。这将极大地驱动您必须为某些功能(例如身份验证)编写的代码。因此,您可以在代码中保持这部分身份验证功能的可配置性,以便您可以有效地切换到最终拓扑。这只是一个示例,您必须牢记某些事情,但不要过度。

    另一个例子是你想使用的缓存机制。您是否应该保留瘦罪 httpsession(不推荐)或使用一些持久/分布式缓存来存储您的数据。

    这些示例非常适合您的应用程序,您应该向利益相关者提出各种问题。

    随着 java 8 的出现,您可以应用函数式编程的某些概念来摆脱并发问题。您不能在遗留项目上这样做,而是开始将它们应用于您的未开发项目。同样,您的项目架构会根据您将要使用的可行方法不断发展。

    【讨论】:

    • 感谢您的回答和书籍。前两本已经看过了,第三本是新的。立即查看。
    猜你喜欢
    • 1970-01-01
    • 2016-01-04
    • 1970-01-01
    • 2013-12-31
    • 2015-07-19
    • 1970-01-01
    • 2016-04-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多