【问题标题】:Programming decision java or .Net, db or no db编程决定 java 或 .Net,db 或无 db
【发布时间】:2009-05-07 10:54:38
【问题描述】:

我在做编程决定时被卡住了,

我是 .Net 开发人员,我目前正在为我的客户端构建一个应用程序,该应用程序从第三方应用程序接收数据,然后它必须对值执行操作并将其发送到 web 服务/servlet,然后将数据显示到一个网页,这里的问题是网页上发送给用户的数据(投票选项,计数等)必须最迟每 2 秒更新一次,

我在做一些决定时很困惑,

1) 数据提供者(第三方应用程序)推荐 Java 但不强制执行,虽然我擅长 .Net(C#),但您会建议使用 C# 还是 Java 构建应用程序。在优化和速度方面,哪个更好?大家有什么推荐的?

2) 从第三方收到数据后,我和我的同事有不同的想法,我希望一旦收到数据,我们应该将其写入数据库(因为它们只是发送的几个固定字段每次),然后让 webservice/servlet 检索数据然后对其进行计算,我的理由是,如果我们保存它,我们还将有一个跟踪和历史数据以及用户思维模式,而我的同事说将其保存到 db 会大大延迟应用程序,我们应该直接从应用程序中轮询数据,他还认为 db 将很快变得庞大且缓慢,我们尝试这样做,但它会导致 8 秒的延迟(对于某些原因tomcat只有在每7次尝试后才检索数据,如果它是一个webapp,如果它是一个java控制台应用程序,则每秒保存一次。,)我的想法是,如果我们保存到db并从那里检索,我们可以获得控制台应用程序每秒写入应用程序,然后使用 webservi 检索数据每秒 ce 左右取决于我们想要什么。

在这个场景中,你们认为什么是好的方法,我们应该保存到数据库还是不保存到数据库?

3) 假设即使我们确实保存到 db,您认为使用 berkeley 或 sqlserver 会有所作为吗?我更喜欢将 sqlserver 用于 .net 和 berkeley 用于 java

我知道这是一个很大的问题,而且会很无聊,但任何帮助/建议将不胜感激,请帮助我们更清楚地了解这些问题堆栈溢出。

感谢您的宝贵时间!

问候。

【问题讨论】:

  • SqlServer 是 RDBMS,而 berkeley-db 不是,我的理解正确吗?
  • 是的,绝对的,Berkeley DB 不是关系数据库系统。 RDBMS 很丰富,并提供高级数据库访问。将 Berkeley db 与 RDBMS 进行比较,它是用于记录存储的高性能事务库,但是,可以在 Berkley db 之上构建关系系统。 Mysql就是这样做的。

标签: java .net sql-server database berkeley-db


【解决方案1】:
  1. 您了解 C#,然后使用它。如果没有其他技术限制,请使用您最了解的技术。

  2. 在尝试了这两种方案之前,不要考虑性能。以您和您同事的方式进行概念验证,查看性能差异以及历史数据优势是否值得性能差异。

  3. 将 SQL Server 用于 C#。您可能需要考虑许可(无论如何您都更了解项目的背景)。

【讨论】:

    【解决方案2】:

    如果您对 .NET 感到满意,为什么还要花时间在 Java 上?我对 Java 的担忧是无关紧要的,但无论如何你都会花时间学习 Java,可能会陷入与任何初学者在使用任何工具或技术时都会陷入的相同陷阱。

    我说,如果您对 .NET 感到满意,请使用 .NET。最终结果不会有太大不同,但您会更快到达那里。

    然后,进行计算并将数据库用作“缓存”的一种形式与保存跟踪记录不同。您可以从第三方应用程序返回结果,并将历史记录存储在数据库中。如果太慢,请排队。

    【讨论】:

      【解决方案3】:
      1. 使用您最熟悉的语言,只要它适合您的客户。

      2. 询问您的客户数据是否必须持久化,如果不需要持久化。如果您必须坚持它,您可以异步执行它,而不会影响在线处理。

      3. 我不知道它们之间的区别,但答案取决于您想对持久性数据做什么(您想保留多长时间,是否需要备份,您是否愿意为解决方案)...因此,如果您知道要实现的目标,则可以选择合适的工具,也许它不会是数据库...

      【讨论】:

        猜你喜欢
        • 2015-05-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-03-06
        • 1970-01-01
        • 2015-05-25
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多