V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Q9K
V2EX  ›  程序员

关于搜索引擎服务的搭建问题

  •  
  •   Q9K · 2023-10-10 21:49:41 +08:00 · 1441 次点击
    这是一个创建于 401 天前的主题,其中的信息可能已经有所发展或是发生改变。

    这个学期我们的软件工程项目是实现一个学术引擎搜索服务,我们已经了解到许多非搜索服务的功能并没有高并发的需求,华为公司将会给我们提供一些大额的优惠券,我们想了解的是,在物理层面,为了实现万级 QPS 的并发要求,我们应该选择一台性能非常好的云服务器,还是说选择集群/容器服务,或者说还有其他的方案可以选择?我也是刚由前端转到后端,对运维方面的知识十分匮乏,对于负载均衡等知识都不太了解,希望 V 友能够予以解答。同时如果大家能够告诉一些公开的学术数据源就更好了(我们现在了解到的是 openalex),非常感谢!

    9 条回复    2023-10-11 18:23:08 +08:00
    Inn0Vat10n
        1
    Inn0Vat10n  
       2023-10-10 22:26:06 +08:00
    实际业务上的万级搜索 QPS 已经很夸张了,这种业务体量下本身就不太可能是单机的服务
    whileFalse
        2
    whileFalse  
       2023-10-10 22:36:38 +08:00 via Android
    集群。就算你开了一台顶级机器抗住万级别的 qps ,人家下次要两万呢?
    另外一个原因是,其实万级 qps 就是纯属吹牛逼的,实际使用平均 qps 能超过 10 就是很大的量了,所以你就搞个单台小机器然后跟他说你能自动伸缩就完了。
    Q9K
        3
    Q9K  
    OP
       2023-10-10 22:56:07 +08:00
    @whileFalse 大佬你好,我们最后需要提供一份压力测试报告,所以应该不能偷奸耍滑)
    Q9K
        4
    Q9K  
    OP
       2023-10-10 22:59:19 +08:00
    @Inn0Vat10n 您好!那像这种需要多机的操作,我了解到华为云上还提供有负载均衡服务,redis 集群服务,甚至还有 elasticsearch 服务,这些服务是不是跟购买集群之后有重合的地方呢
    jimyag
        5
    jimyag  
       2023-10-10 23:58:07 +08:00
    之前的某个比赛做过搜索引擎的项目,我们手写一个搜索引擎。一亿条数据系统能在几毫秒内找到对应关键字的数据。
    jimyag
        6
    jimyag  
       2023-10-11 00:02:10 +08:00
    @jimyag 我们就只加了一个 LRU 的缓存。https://github.com/zhSou 。QPS 能到 5000 左右。https://imgur.com/a/ZhuOVFY
    Features
        7
    Features  
       2023-10-11 00:38:05 +08:00
    @Q9K 弹性伸缩,按量付费
    就压力测试的时候通过业务编排加一下资源就行了
    服务器费用总共加起来不会超过 2k
    平时整一台 4c8g 的机器苟着,一个月也就三四百
    jiangwei2222
        8
    jiangwei2222  
       2023-10-11 08:29:51 +08:00 via Android
    直接用华为云的 es 集群你的项目就完美完成了,什么万 qps ,十万才好意思拿出手
    XiLingHost
        9
    XiLingHost  
       2023-10-11 18:23:08 +08:00   ❤️ 1
    k8s 有个自动伸缩,这种无状态的服务太适合了
    https://kubernetes.io/zh-cn/docs/tasks/run-application/horizontal-pod-autoscale/
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1043 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 21:22 · PVG 05:22 · LAX 13:22 · JFK 16:22
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.