gpt4 book ai didi

java - 关键高效的服务器

转载 作者:塔克拉玛干 更新时间:2023-11-01 22:58:57 25 4
gpt4 key购买 nike

我正在开发一个基于客户端-服务器的金融警报应用程序,其中客户端可以设置一个值作为所选金融工具的警报,当达到该值时,监控服务器将以某种方式提醒客户端(电子邮件,短信 ... 不重要)。服务器将监视来自数据生成器程序的更新。现在,服务器必须非常高效,因为它必须处理许多客户端(可能超过 50-100.000 个警报,更新时间为 1.2 秒)。我以前写过服务器,但从来没有这样强加的性能,我'我只是担心基本方法(像以前一样)不会做到这一点。那么我应该如何设计服务器?,什么样的数据结构最适合?......多线程呢?......一般来说我应该做什么(以及我不应该做什么)来榨取每一滴性能是吗?

谢谢。

最佳答案

我以前在这样的服务器上工作过。它们都是用 C(或相当简单的 C++)编写的。但它们的性能甚至更高——每秒处理 20K 次更新(所有更新都来自大多数主要证券交易所)。

我们会专注于不复制内存。我们在使用哪些 STL 类时非常小心。就更新而言,每种金融工具都是一个对象,任何想了解该工具的客户都会订阅它(即添加到列表中)。

服务器是多线程的,但不是很严重——也许一个线程处理传入的更新,一个处理传出的客户端更新,一个处理客户端订阅/发布通知(不记得那部分了——只记得它有更少的线程线程比我预期的多,但不仅仅是一个)。

编辑:哦,在我忘记之前,发生的金融交易数量正以指数级速度增长。那台 20K/秒的服务器勉强跟上,架构师们对明年要做什么感到压力很大。我听说所有主要的金融公司都面临着类似的问题。

关于java - 关键高效的服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/893070/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com