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

小公司同学们来分享一下你们在用,但大公司可能不会采用的技术吧

  •  
  •   qq1340691923 · 2021-12-17 09:32:18 +08:00 · 14999 次点击
    这是一个创建于 1063 天前的主题,其中的信息可能已经有所发展或是发生改变。
    123 条回复    2023-07-24 15:51:10 +08:00
    1  2  
    oyasumi
        1
    oyasumi  
       2021-12-17 09:34:32 +08:00 via Android
    dbflute
    agagega
        2
    agagega  
       2021-12-17 09:38:01 +08:00 via iPhone   ❤️ 2
    rails
    teem
        3
    teem  
       2021-12-17 09:41:42 +08:00
    ACTFramework
    jyeeren
        4
    jyeeren  
       2021-12-17 09:41:51 +08:00
    @agagega rails 的开发体验还是很不错的,可惜都没什么人用了
    MoYi123
        5
    MoYi123  
       2021-12-17 09:44:59 +08:00   ❤️ 17
    服务器 cpu 负载太高了, 解决方案不是优化代码,而是在关键处加上 time.sleep.
    sagaxu
        6
    sagaxu  
       2021-12-17 09:45:23 +08:00 via Android   ❤️ 9
    1. 直接登生产环境改 PHP 代码,人肉跑脚本
    2. 2017 年初用 Kotlin 重构服务端
    3. 2018 年 SpringBoot 重构到 Vertx
    4. 2019 年异步回调重构到协程

    2 3 4 全程没有测试参与,也没有 unit test ,基本没有因此产生 bug
    qq1340691923
        7
    qq1340691923  
    OP
       2021-12-17 09:46:19 +08:00
    @MoYi123 哈哈,time.sleep,看来是用的 go 语言
    qq1340691923
        8
    qq1340691923  
    OP
       2021-12-17 09:49:20 +08:00
    @sagaxu 我去过的用 php 的公司都曾经生产环境直接改过代码,即使是大公司的 bff 层的 phper 也偷偷这么改过,虽然他事后被组长说了一顿
    qq1340691923
        9
    qq1340691923  
    OP
       2021-12-17 09:50:41 +08:00
    @jiangwenwenmodes 至少这次 log4j 危机你们躲过去了
    HHAO2019
        10
    HHAO2019  
       2021-12-17 09:51:32 +08:00
    云效 devops
    txwd
        11
    txwd  
       2021-12-17 09:52:50 +08:00   ❤️ 4
    生产环境修改代码,修改数据库
    aladdinding
        12
    aladdinding  
       2021-12-17 09:53:24 +08:00
    生产环境直接改代码修 bug
    lxfxf
        13
    lxfxf  
       2021-12-17 09:56:34 +08:00
    前公司,用 ScalaCss ,ScalaJS 。然后我只能辞职了
    KevinQi
        14
    KevinQi  
       2021-12-17 09:56:34 +08:00
    jfinal 框架,大公司应该用的是 springboot 吧
    LinkinLaw
        15
    LinkinLaw  
       2021-12-17 09:56:46 +08:00   ❤️ 27
    用微信 QQ 等社交软件直接互传代码,再用文件比对软件合并代码,以达到合作开发的目的。
    cyy564
        16
    cyy564  
       2021-12-17 09:56:47 +08:00
    flask ,应该没有大厂会用 python 写 web 了吧
    itechnology
        17
    itechnology  
       2021-12-17 10:03:18 +08:00
    Java ,前公司,不用持久化框架,用原生 jdbc 来操作数据库,美名其曰数据量少,用不着持久化框架,然后我们就得手动写 SQL+手动开启和释放事务
    3dwelcome
        18
    3dwelcome  
       2021-12-17 10:06:03 +08:00
    用长连接写交互式网页,技术选型可以为所欲为。

    大公司正常写网页,至少要写个 form 让浏览器去提交。我喵的全部长连接 websocket 内搞定。
    3dwelcome
        19
    3dwelcome  
       2021-12-17 10:09:14 +08:00   ❤️ 4
    大公司正常写网页,至少有个 json 对象。

    嗯。我首创无 json 写网页,完全没一个 json 对象。核心对象全部二进制流加密传输,应该是前无古人,后无来者了。
    qq1340691923
        20
    qq1340691923  
    OP
       2021-12-17 10:12:20 +08:00
    @3dwelcome 没,我之前看 thinkingdata 也是这么做的
    xwhxbg
        21
    xwhxbg  
       2021-12-17 10:12:36 +08:00   ❤️ 1
    erlang ,其实写通讯类服务用 erlang 还是很爽的,它的 gen server ,sup 和 statem 机制很容易把业务解耦和抽象,只是性能和各方面已经渐渐比不上现在的主流 rust 和 c 了
    纯函数式的上手难度还是略大一点,想要找接盘侠确实不容易
    Mistwave
        22
    Mistwave  
       2021-12-17 10:12:37 +08:00 via iPhone
    @lxfxf 哈哈哈哈哪家这么勇?
    qq1340691923
        23
    qq1340691923  
    OP
       2021-12-17 10:13:30 +08:00
    @3dwelcome 不过他们应该是需要实时获取后台数据分析的进度,所以才用的 websocket
    sarices
        24
    sarices  
       2021-12-17 10:14:48 +08:00
    ftp 上去生产环境修改 PHP 代码,使用 phpmyadmin 登录数据库修改
    ajax 聊天室
    使用 Dreamweaver 写 php+html 结合的页面,网页布局用 table 一把刷
    qq1340691923
        25
    qq1340691923  
    OP
       2021-12-17 10:15:15 +08:00
    @xwhxbg 挺多游戏服务器用 erlang 的,我现在在的这家游戏公司,以前也是用的 erlang ,这两年转的 golang
    3dwelcome
        26
    3dwelcome  
       2021-12-17 10:16:56 +08:00
    @qq1340691923

    “ 没,我之前看 thinkingdata 也是这么做的”

    我是 WASM+WebSocket ,由于 WASM 可以做到操纵 DOM ,所以甚至可以不写 javascript ,也就不需要 JSON 。

    这种技术栈也就是小公司能用用,已经完全脱离传统前端开发的概念了。
    pigspy
        27
    pigspy  
       2021-12-17 10:17:29 +08:00
    @xwhxbg hhh ,我也很喜欢 erlang
    so1n
        28
    so1n  
       2021-12-17 10:19:40 +08:00
    日志通过 syslog 传到一台机器 然后用 awk grep 之类的命令查询
    7gugu
        29
    7gugu  
       2021-12-17 10:20:01 +08:00
    @3dwelcome 说不定是 fulture ,因为这样子就可以增加前端数据安全了😂
    zh6335901
        30
    zh6335901  
       2021-12-17 10:20:26 +08:00
    .net core orleans
    7gugu
        31
    7gugu  
       2021-12-17 10:20:35 +08:00
    @3dwelcome 有 demo 可以学习一下吗?很好奇效果是怎么样子的。
    qq1340691923
        32
    qq1340691923  
    OP
       2021-12-17 10:24:55 +08:00
    @so1n 为啥不用 efk
    sheffield
        33
    sheffield  
       2021-12-17 10:26:54 +08:00   ❤️ 2
    编辑 excel 文件,每个人轮流改完发到微信群一次,然后我的文件目录下面全是(1)(1)(1)(1)(1)(1)(1)(1).xlsx
    goldenalex
        34
    goldenalex  
       2021-12-17 10:28:27 +08:00   ❤️ 17
    只要大叫技术人员名字就能叫来的技术支持。。。
    so1n
        35
    so1n  
       2021-12-17 10:32:36 +08:00
    @qq1340691923 elk 集群要钱啊 而且就几个人看
    bruce0
        36
    bruce0  
       2021-12-17 10:35:06 +08:00   ❤️ 2
    生产环境直接人工修改数据库, 大公司估计不会这么干吧,估计开发也没权限
    DT37
        37
    DT37  
       2021-12-17 10:39:27 +08:00
    @sagaxu 巧了一模一样,难道是同事?
    ericls
        38
    ericls  
       2021-12-17 10:41:15 +08:00 via iPhone
    elm, elixir
    janus77
        39
    janus77  
       2021-12-17 10:42:12 +08:00
    几年前的一家,还在用 eclipse+oracle+extjs
    Chism
        40
    Chism  
       2021-12-17 10:42:44 +08:00
    入职第一年没有年假,入职第 11 个月公司改主体重新签合同,年假要再等一年才给(真人真事),这算老板的技术吧
    qq1340691923
        41
    qq1340691923  
    OP
       2021-12-17 10:44:25 +08:00
    @janus77 除了 extjs ,其他两个挺正常的吧
    delectate
        42
    delectate  
       2021-12-17 10:47:27 +08:00
    vb
    qW7bo2FbzbC0
        43
    qW7bo2FbzbC0  
       2021-12-17 10:50:36 +08:00
    @zh6335901 #30 没有用过 orleans ,我使用的 consul + health 接口完成注册访问,一个 Internal 包保存互访方法和接口定义,看了下 orleans ,没太明白怎么实现注册发现
    crazypig14
        44
    crazypig14  
       2021-12-17 11:09:29 +08:00
    @sarices 我上次这么干还是北京奥运会之前
    Bigglesworth
        45
    Bigglesworth  
       2021-12-17 11:13:37 +08:00
    之前用 JSP 写前端,有的需求还得按客户给的图还原出来
    codingbear
        46
    codingbear  
       2021-12-17 11:13:50 +08:00
    @HHAO2019 我怀疑你和我是同事,不知坐标深蓉杭哪里
    krapnik
        47
    krapnik  
       2021-12-17 11:14:54 +08:00
    eval 注入执行逻辑,性能去 tm
    kensoz
        48
    kensoz  
       2021-12-17 11:22:33 +08:00   ❤️ 7
    敏捷开发:开发一把梭,扔到服务器里能用就行,让用户测试
    高效迭代:从来不写文档,从不区分环境,从不优化,部署后开始写设计书
    分支集中管理:所有人用一个 branch ,不让新建
    数据高效管理:拷贝到优盘里坐地铁送给客户
    见证历史:cobol ,早期 java 版本,vue1 ,windows98
    FallenMax
        49
    FallenMax  
       2021-12-17 11:29:37 +08:00   ❤️ 1
    前端,个人,开发爽上天但无法推广到大公司的技术:

    - 前后端都用 JavaScript ,一个代码仓库,代码和类型共用。
    - 前端代码通过 rpc 调用(封装 http 请求)访问后端方法,后端接口类型变更可以触发前端类型错误。
    - 部署用 rsync 增量传输,用 yarn 增量安装,秒级更新上线
    - git 提交信息一般只写一个字母

    不正规但爽
    MoYi123
        50
    MoYi123  
       2021-12-17 11:31:16 +08:00
    @xwhxbg erlang 24 新的 jit 性能怎么样? 我已经从 erlang 转 go 了,不太清楚.
    gesse
        51
    gesse  
       2021-12-17 11:33:04 +08:00
    @MoYi123
    > 解决方案不是优化代码,而是在关键处加上 time.sleep.

    谁说大公司不用? 我觉得苹果在 IOS 上就经常用。🐶
    viator42
        52
    viator42  
       2021-12-17 11:37:39 +08:00 via Android
    一个商城 app 的后端用 WordPress 搭建,各种功能都是插件解决
    SWALLOWW
        53
    SWALLOWW  
       2021-12-17 11:38:40 +08:00
    .net
    codingbody
        54
    codingbody  
       2021-12-17 11:39:13 +08:00
    @MoYi123 #5 如果某个线程当前没有要处理的任务,要怎么处理呀?我是 sleep 把 cpu 让出去。
    hb1988
        55
    hb1988  
       2021-12-17 11:42:32 +08:00
    混合 app 开发技术: ionic3 ,估计绝大数前端都没听过。
    MoYi123
        56
    MoYi123  
       2021-12-17 11:44:01 +08:00
    @codingbody

    erlang 代码,可能和你理解的有些差别.
    erlang 里正经的做法可以参考 rabbitmq 的 gen_server2 里的休眠策略.
    https://github.com/rabbitmq/rabbitmq-server/blob/master/deps/rabbit_common/src/gen_server2.erl
    codingbody
        57
    codingbody  
       2021-12-17 11:54:03 +08:00
    @MoYi123 #56 看不太懂,大概的意思是不是使用 loop ,而是采用类似 notify 的方式吗?
    scr
        58
    scr  
       2021-12-17 11:59:12 +08:00   ❤️ 6
    生产环境开 IDE 断点调试。
    pckillers
        59
    pckillers  
       2021-12-17 12:15:06 +08:00
    部署时使用 MobaXterm 的 MutiExec 功能,同时在 8 台服务器上敲命令更新代码。
    chengyunbo
        60
    chengyunbo  
       2021-12-17 12:27:43 +08:00
    @MoYi123 大公司也在 sleep
    liyhu
        61
    liyhu  
       2021-12-17 12:34:08 +08:00
    svn ,用 root 账号部署
    vstar
        62
    vstar  
       2021-12-17 13:04:45 +08:00
    ios 马甲包
    CasualYours
        63
    CasualYours  
       2021-12-17 13:11:40 +08:00   ❤️ 1
    经常登录生产服务器替换文件,以及改生产数据库...
    KouShuiYu
        64
    KouShuiYu  
       2021-12-17 13:22:01 +08:00
    @3dwelcome 我想问一下是只用一个 WebSocket 链接吗?所有的数据传输用 json ,解析不同类型用不同的事件监听触发?
    Protocol
        65
    Protocol  
       2021-12-17 13:32:49 +08:00
    易语言
    abersheeran
        66
    abersheeran  
       2021-12-17 13:37:13 +08:00
    在用 index-py(hintapi)、cool 、mingshe ,这三玩意肯定是没大公司用的
    Charod
        67
    Charod  
       2021-12-17 13:37:55 +08:00
    @hb1988 前几年很多人用
    chenmobuys
        68
    chenmobuys  
       2021-12-17 13:45:14 +08:00
    @FallenMax Git 提交信息是给你自己看的,到时候难受的还是自己
    urzz
        69
    urzz  
       2021-12-17 14:06:43 +08:00
    @KevinQi #14 之前呆的一家也是用的 jfinal ,写的时候还挺爽,维护真头大
    l4ever
        70
    l4ever  
       2021-12-17 14:08:30 +08:00
    microsoft access
    l4ever
        71
    l4ever  
       2021-12-17 14:10:30 +08:00
    自动编译用 java 写的, 检出提交人提交的 svn 路径内的代码, 再执行代码内的 bat 编译, 编译好之后上传结果.
    嘎嘎嘎
    patrickl
        72
    patrickl  
       2021-12-17 14:20:21 +08:00
    crontab + pgdump 备份。scp/lrzsz 上传包。远程服务器命令行 /reboot 重启服务。
    kennnnnnnnnnn
        73
    kennnnnnnnnnn  
       2021-12-17 14:32:15 +08:00
    qt
    lvma0shu1gua1
        74
    lvma0shu1gua1  
       2021-12-17 14:39:03 +08:00
    svelte
    wupher
        75
    wupher  
       2021-12-17 14:39:23 +08:00
    groovy / GORM 其实就是把 GRails 嫁接到 spring boot 上。
    component
        76
    component  
       2021-12-17 14:41:03 +08:00   ❤️ 20
    压力测试靠公司人工同时点鼠标
    chenyu8674
        77
    chenyu8674  
       2021-12-17 14:48:08 +08:00   ❤️ 1
    徒手画饼,全民全栈
    Mirachael
        78
    Mirachael  
       2021-12-17 14:48:13 +08:00
    @component 哈哈哈
    Mirachael
        79
    Mirachael  
       2021-12-17 14:50:55 +08:00
    cordova 用于打包 Phaser3 开发的游戏为混合应用
    kazarin
        80
    kazarin  
       2021-12-17 14:51:37 +08:00
    NestJS
    xwhxbg
        81
    xwhxbg  
       2021-12-17 14:57:13 +08:00
    @MoYi123 没有实测,不过 24 默认不带 beam 了,都是 native 估计性能能提升不少
    qq1340691923
        82
    qq1340691923  
    OP
       2021-12-17 15:41:02 +08:00
    @kazarin nestjs 挺好的啊,nodejs 中的 spring
    3dwelcome
        83
    3dwelcome  
       2021-12-17 15:56:37 +08:00
    “我想问一下是只用一个 WebSocket 链接吗?所有的数据传输用 json ,解析不同类型用不同的事件监听触发?”

    对于各种表单展示,只用一个 websocket 基本上够用了。只有上传大文件的时候,估计会另外开一个。

    然后 websocket 走的是私有协议,加上 WASM 可以随便处理二进制,所以是不是 json 已经完全不重要了,和服务器交互的备选数据格式有很多。
    easylee
        84
    easylee  
       2021-12-17 15:59:15 +08:00
    @sagaxu 2/3/4 太香了
    kazarin
        85
    kazarin  
       2021-12-17 16:00:20 +08:00
    @qq1340691923 但是公司会用的情况并不多。如果 JS 一把梭而且前端是 vue 或者 react ,没理由不用 Nuxt 或者 NextJS ;如果不是想要全栈 JS 一把梭就是单纯写个 API ,在 Golang/Java/Python/JS/TS 之间选 TS 的比例能有多大;就算是认定了只用 TS 写个后端服务和 API ,我同事也是觉得 Express 足够好用而且也用惯了没什么理由用 NestJS 。我这项目刚开始的时候是我单人开发的所以才用了 NestJS ,后来为了保下来不重写简直一把辛酸泪……
    gowk
        86
    gowk  
       2021-12-17 16:03:37 +08:00
    @LinkinLaw 卧槽,2021 年了……
    fisherwei
        87
    fisherwei  
       2021-12-17 16:05:59 +08:00
    因为历史遗留问题,汽车之家用 .net + sql server ,不过已经很少了
    sks4728
        88
    sks4728  
       2021-12-17 16:19:01 +08:00
    .net6
    lllllliu
        89
    lllllliu  
       2021-12-17 16:34:45 +08:00
    - - ThinkPHP
    m1ch3ng
        90
    m1ch3ng  
       2021-12-17 16:45:29 +08:00
    loki+grafana
    xiaowangge
        91
    xiaowangge  
       2021-12-17 16:52:06 +08:00 via iPhone
    vert.x
    aurtech
        92
    aurtech  
       2021-12-17 16:55:37 +08:00
    flutter ,顺便求一名 flutter 开发工程师啊~在深圳的
    declandragon
        93
    declandragon  
       2021-12-17 17:25:47 +08:00
    宝塔运维,人肉浏览器 FTP 发布,线上改代码是经常的事
    Maiiiiii
        94
    Maiiiiii  
       2021-12-17 17:29:53 +08:00
    修复好的 zip 不重命名直接替换到线上,再手动刷 cdn
    Maiiiiii
        95
    Maiiiiii  
       2021-12-17 17:31:14 +08:00
    国内裸连越南服务器 ftp ,2kb/s 速度传文件
    AmaQuinton
        96
    AmaQuinton  
       2021-12-17 17:31:39 +08:00
    某银行柜面系统, spring/struts2/ hibernate + Oracle + JSP, 甚至可以看到 08 年的代码
    binhb
        97
    binhb  
       2021-12-17 17:37:49 +08:00
    @chenyu8674 #77 哈哈哈 给整笑了
    Maiiiiii
        98
    Maiiiiii  
       2021-12-17 17:49:54 +08:00
    一个老哥前后端一把梭,所有的请求都携带全部流程需要用到的三四十个参数,还全 tm 是拼音缩写,没有文档
    f360family123
        99
    f360family123  
       2021-12-17 18:17:50 +08:00
    @hb1988 ionic 不是用的人也很多吗
    f360family123
        100
    f360family123  
       2021-12-17 18:21:11 +08:00
    在用 react-query ,不知道大公司用不用
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3314 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 30ms · UTC 00:42 · PVG 08:42 · LAX 16:42 · JFK 19:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.