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

是时候寻找 Java 的替代方案了

  •  
  •   Hanggi · 160 天前 via iPhone · 8027 次点击
    这是一个创建于 160 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简单列一下:

    Elasticsearch 用什么替代? ELK 有什么优质替代方案吗? Spark 有什么好的分布式计算替代方案吗?

    Spring boot 感觉替代方案很多。

    还有什么推荐的替代项目吗?

    第 1 条附言  ·  159 天前
    目前 Elasticsearch 替代方案有以下:

    Library: bleve

    服务:Typesense (C++), Sonic (Rust)

    有 Go 语言解决方案的话求推荐。

    ---

    还有什么好项目求推荐.
    49 条回复    2021-12-15 00:08:10 +08:00
    as9567585
        1
    as9567585  
       160 天前
    为什么呢
    ferock
        2
    ferock  
       160 天前   ❤️ 3
    替代完了,其他语言就没 bug 了?

    现在啥语言顶层应用,底下没有一堆依赖?这样的解决方案是换汤不换药
    yazinnnn
        3
    yazinnnn  
       160 天前   ❤️ 3
    楼主有心的话,可以用.net 把 java 的轮子全撸一遍,反正 C#语法跟 java 差不多。F#撸一遍 SCALA 的轮子
    james2013
        4
    james2013  
       160 天前   ❤️ 1
    Spring boot 感觉替代方案很多,这话不太赞同
    Spring boot 除了占用内存相对高些,以下的优点有哪些替代方案能够综合比它好的:
    1.开发速度快,创建 1 个 Spring boot 项目,只需要在配置文件填入 redis/mysql 账号密码,就能够使用了.
    2.开源生态非常成熟,mybatis 及进一步封装的 orm 框架可以很方便的进行增删查改,甚至有管理系统的脚手架,权限,微服务等都配置好了
    3.扩展性强,从个人项目到大厂项目,用这个框架都可以满足
    4.Java 强类型,不管是小白还是老手,写出的代码可读性比 python 高多了,python 逻辑写复杂了,过几个月,自己都不知道写什么了
    5.Java 开发人员人数众多
    Hanggi
        5
    Hanggi  
    OP
       160 天前 via iPhone
    @ferock 其实只是想找找最近有什么好的开源项目,Elasticsearch 和分布式计算好像被 Java 垄断了,看看能不能炸出什么好东西。
    Hanggi
        6
    Hanggi  
    OP
       160 天前 via iPhone
    @james2013 同意
    单从某一个角度来说 Spring boot 并非最佳,但是整体来说可能是综合能力最好的框架。
    gesse
        7
    gesse  
       160 天前
    @yazinnnn
    按照常理应该已经撸了很多了。
    qwerthhusn
        8
    qwerthhusn  
       160 天前
    你说的那些软件又不是只有 Java 能用,比如 ES 提供的就是 HTTP API 用啥语言不一样?
    a398058068
        9
    a398058068  
       160 天前
    你需要给这个话题拟设一个场景,spring mybatis hibernate elk mysql hadoop spark flink 这些框架和中间件都有对应的替代方案,只不过是在不同的场景, 并非通吃。 当然杀鸡用宰牛刀也是可以的。

    比如国内用 mybatis 的企业比用 hibernate 的多。 你不能说 hibernate 好 也不能说 mybatis 不好。可能你的系统属于 OLTP ,并且团队内的人都懂 DDD 配合也相对较好不用较大的学习成本,这时用 hibernate 可以减少后期的维护成本并足以应对后期的复杂需求的迭代开发。

    比 elk 更轻量级的 loki 也是一个道理 如果觉得 elk 重可以考虑 loki ,但是你需要考虑你的系统的体量 loki 是否可以满足同时目前的人员是否足以解决 loki 带来的问题,因为他不像 elk 有足够多的解决方案资料。

    所以你缺少一个场景去考虑你的方案。
    hand515
        10
    hand515  
       160 天前
    @qwerthhusn #8 OP 提的都是 Java 开发的,他意思是有没有其他语言开发,跟 ES 、Spark 一样功能的
    selfcreditgiving
        11
    selfcreditgiving  
       160 天前 via Android
    @hand515 话说这个新加的 OP 是啥,还挺好看的,就是不知道什么意思
    guog
        12
    guog  
       160 天前 via Android
    dreamramon
        13
    dreamramon  
       160 天前
    所有语言都写,说实话,还真没看到一个能和 spring 对打的,适合大工程,国内招聘环境,国内开发环境的框架。
    nebkad
        14
    nebkad  
       160 天前
    xuanbg
        15
    xuanbg  
       160 天前
    @qwerthhusn 楼主说的是用别的替代 ES 。。。
    xuanbg
        16
    xuanbg  
       160 天前
    说实话,有问题解决问题,有漏洞打补丁就行了。替代啥啊,换来换去有本质不同吗?能多赚钱吗?下班准时回家,周末出去溜达不香吗?
    fkdog
        17
    fkdog  
       160 天前
    优秀的程序员:
    出现需求->寻求市面上成熟的解决方案->出现疑虑困惑->通过各种途径解决使用困惑->问题属于硬伤无法解决->有能力则自己造轮子,没能力退而求其次选择其他方案

    抠脚程序员:
    出现需求->寻求市面上成熟的解决方案->选择 ES->ES 出现问题->换 SOLR->SOLR 出现问题->自己研究 LUENCE->能力有限研究不出来->?好像 pg 也有 full text search ?-> 感觉不好用->再次换回 ES
    Buges
        18
    Buges  
       160 天前 via Android   ❤️ 1
    如果只是简单的搜索引擎,可以试试 https://github.com/meilisearch/MeiliSearch
    比 es 轻量、易用的多。
    kidonng
        19
    kidonng  
       160 天前 via Android
    是框架选择了 Java ,觉得框架不符合需求为什么要 Java 背锅🐶
    FightPig
        20
    FightPig  
       160 天前
    https://github.com/prabhatsharma/zinc 最近看到的 es 的代替
    janxin
        21
    janxin  
       160 天前
    应该先讲为什么要替代...
    ychost
        22
    ychost  
       160 天前
    用 Go 呗,不过问题肯定不必 Java 少
    p2pCoder
        23
    p2pCoder  
       160 天前
    重写大数据生态圈
    ijk0
        24
    ijk0  
       160 天前
    @selfcreditgiving original poster
    selfcreditgiving
        25
    selfcreditgiving  
       160 天前 via Android
    @guog
    @ijk0 哦,是这个意思,还以为是拼音缩写或者楼主的直译 owner of post
    LeeReamond
        26
    LeeReamond  
       159 天前
    @james2013 py 非严格类型不利于测试覆盖倒是真的,你要是说写的代码过两个月就不知道写的是啥了,那只能说写的相当随性,你用随性的态度这 java 一样不知道写的是什么,你用严格的标准写 python 一样可读性非常高
    dayeye2006199
        27
    dayeye2006199  
       159 天前
    为什么要换掉这些技术栈呢,是因为这次 log4j 的事件吗?

    给 LZ 提供一个新的思路,直接使用各种 managed service ,人家有专门的安全团队、运维团队,出了问题一个电话人连夜修;只要付钱,轻松省事。

    Managed elastic - https://www.elastic.co/elastic-stack/
    Managed spark - https://databricks.com/
    thetbw
        28
    thetbw  
       159 天前
    kotlin
    banmuyutian
        29
    banmuyutian  
       159 天前
    没有银弹
    fengsi
        30
    fengsi  
       159 天前 via Android
    @james2013 老哥,管理系统的脚手架能推荐一两个吗
    dcoder
        31
    dcoder  
       159 天前
    masterclock
        32
    masterclock  
       159 天前
    欢迎使用 Scala ,继承 Java 的一切,当然,包括 bug
    aboat365
        33
    aboat365  
       159 天前
    anonydmer
        34
    anonydmer  
       159 天前
    恩,业界已经替代了几十年了
    Hanggi
        35
    Hanggi  
    OP
       159 天前
    @dcoder 这个有点意思,可以研究一下,但好像是 library 而不是 server 。
    grofis
        36
    grofis  
       159 天前
    Nodejs
    james2013
        37
    james2013  
       159 天前
    @fengsi 我用过的 jeecg-boot,mall 感觉不错,尤其是 jeecg-boot
    对自带的模版进行修改,一键生成前后端代码,再进行写具体业务逻辑
    iovekkk
        38
    iovekkk  
       159 天前
    后端用 go
    客户端用 kotlin
    Ayanokouji
        39
    Ayanokouji  
       159 天前
    linux 那么多 bug ,还要自己造操作系统替代吗
    ikas
        40
    ikas  
       159 天前
    多看看 cve,cnnvd 列表,多关注下 xss..你会发现...这世界如此的不安全...用啥都一样
    pengtdyd
        41
    pengtdyd  
       159 天前
    JAVA 语言在 web 后端架构上无出其右,其他语言只能补充,不能替代。
    CynicalRose
        42
    CynicalRose  
       159 天前
    如果真有代替 spring boot 的方案,务必告诉我,学写 starter 快吐了
    Leviathann
        43
    Leviathann  
       159 天前
    @pengtdyd 大数据的话是这样,但是普通的 crud 后端国外还是挺百花齐放的
    keymao
        44
    keymao  
       159 天前
    Springboot 替代方案很多..... 额 不知道从何说起

    这个行当的最佳实践不太多,最终大浪淘沙下来可能就这么一个或两个,换来换去你会发现其设计思路都差不多,bug 也一点没少。
    TomatoYuyuko
        45
    TomatoYuyuko  
       159 天前
    这帖子我每年都能见到至少一次
    efaun
        46
    efaun  
       159 天前
    用 php
    xiparos
        47
    xiparos  
       159 天前
    你要是想替代就自己撸个其他语言的 Spring 全家桶出来,撸不出来就老老实实用
    mmdsun
        48
    mmdsun  
       159 天前 via iPhone
    能替换整个 Java 生态的也只有隔壁.NET
    https://dotnet.microsoft.com/zh-cn/

    大数据这块全部用微软的解决方案。
    SQL Server 2019 全文检索,Spark ,数据仓库和 BI 到 AI 和高级数据分析全部都有了。上云也行
    ByteCat
        49
    ByteCat  
       159 天前
    Spring Boot 很成熟了,不喜欢 Java 可以用 Kotlin ,我做了好几个项目了
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1918 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 16:41 · PVG 00:41 · LAX 09:41 · JFK 12:41
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.