来说说自己业余项目的技术栈

2020-11-11 11:57:24 +08:00
 ga6840
先说一下我的:

OS: Debian
数据库:Postgresql
鉴权:JWT
前端:Vue3 + PrimeVue + Webpack
后端:nodejs + C + php
Gateway: OpenResty
容器编排: Docker Swarm
CI: Github Actions (目前只是自动构建容器并推送)
编排自动化 /自举 /Dashboard:自己写的(叫做 Calabash )
监控:Prometheus + Grafana + node-exporter
存储同步:rsync
TLS 以及自动更新证书: Let's encrypt + acme.sh
12419 次点击
所在节点    程序员
113 条回复
oneforallsoft
2020-11-11 12:04:23 +08:00
os:win10 + debian
数据库: mysql + pgsql
鉴权:JWT
前端:Vue2 bulma jquery nuxt
Gateway: apache
容器编排: 无
CI: 无
编排自动化 /自举 /Dashboard:无
监控:无
存储同步:无
TLS 以及自动更新证书: Let's encrypt

还有后端: php laravel + Go + java
kop1989
2020-11-11 12:10:23 +08:00
都整这么复杂?

系统:windows,
web 容器:IIS,
数据库:.txt,
鉴权:自己鉴,
前端:jQuery
Gateway: 没有
容器编排: 人肉
CI: 人肉
编排自动化 /自举 /Dashboard:用不着
监控:自己写
存储同步:人肉
TLS 以及自动更新证书: 用不着
raaaaaar
2020-11-11 12:11:29 +08:00
@kop1989 #2 秀儿
danRen
2020-11-11 12:17:22 +08:00
OS: Centos
数据库:mongodb
鉴权:JWT
前端:Vue + Webpack + uni-app
后端:nodejs
Gateway: nodejs
容器编排: Docker
TLS 以及自动更新证书: Let's encrypt
acmore
2020-11-11 12:18:23 +08:00
OS: Ubuntu Server
数据库:MongoDB / Redis
鉴权:JWT / OAuth 2.0
前端:Vue 全家桶
后端:NodeJS / Python / Java
Gateway: Kong
容器编排: Docker Swarm
CI/CD: Github Actions / Azure Pipeline
编排自动化 /自举 /Dashboard: None
监控:Netdata
存储同步:None
TLS 以及自动更新证书: Let's encrypt

实际上大部分情况下连容器都不用,自己写部署脚本或者直接放在 CD 里。
ga6840
2020-11-11 12:19:13 +08:00
我选择的理由主要也是尽量减少自己维护的负担啦,没想到还被评价复杂 (哭

其实一开始也是觉得怎么这套技术栈不那么主流,所以想贴出来,如果用主流 k8s 的欢迎讨论一下使用场景和原因。
chendy
2020-11-11 12:19:55 +08:00
语言:java

没了,就一给自己用的库
kphcdr
2020-11-11 12:19:58 +08:00
@kop1989 人工智能
coolmenu
2020-11-11 12:22:33 +08:00
postgresql + hasura
kop1989
2020-11-11 12:28:24 +08:00
btw,安利一下现在正在玩的:星际争霸 1 代 AI
星际争霸 1 代的 AI 是由第三方 hack 的 framework 来实现的。目前生态很充足,既能用纯脚本,也能用机器学习。
我 2L 简陋的 jquery 项目就是一个我自己在用的,星际争霸 1 代 AI 的对练平台。

我采用的 AI 策略是运营脚本,战斗机器学习。
欢迎加入开发星际争霸 1 代 AI 的圈子。

学习资料:
https://sscaitournament.com/index.php?action=tutorial
https://zhuanlan.zhihu.com/p/33897686
ga6840
2020-11-11 12:29:35 +08:00
有用 MongoDB 的,大家可以看看黄东旭的评价

https://www.bilibili.com/video/BV1nJ411T7Vm/#时间:54:32

当然很适合数据小的时候的小项目,但是我主要担心的是 MongoDB 在安全方面的不足,而且这个公司噱头比技术更厉害。
ga6840
2020-11-11 12:33:00 +08:00
@kop1989 及时策略的 AI OpenAI 应该做到极致了吧?可以看看 PPO 算法?中间的奖励最好用人工定义,我记得看过他们的一个视频提到很多人工自己定义的 奖励场景,用来克服奖励稀疏问题。
ga6840
2020-11-11 12:33:31 +08:00
@danRen 是在做小程序吗?
ga6840
2020-11-11 12:34:17 +08:00
@acmore 好奇问一下,请问选择 Kong 的原因是什么?有没有考虑 OpenResty?
xcstream
2020-11-11 12:40:02 +08:00
nginx nodejs mysql redis
jones2000
2020-11-11 12:41:38 +08:00
只会 c++, 提供 c++业务动态库给其他语言调用 如 py, .net, nodejs,java
ga6840
2020-11-11 12:43:14 +08:00
@acmore 另外,我知道很多人都不选择容器,而是用 Ansible 之类的。这样的好处当然可能性能上有一定优势(可以减少内存占用)但是隔离性不好,隔离性不好有安全问题也有部署问题。比如你不能在同一台机器上同时运行系统级的包管理安装,所以这样做一般都是一个脚本只能运行在一个节点上(比如 VPS ),也就没有办法更细化的占用整个集群闲置的资源。
ga6840
2020-11-11 12:50:14 +08:00
容器化还有一点非常好的,就是方便 DevOps,程序员如果参与到自己代码的部署,可以写和部署环境无关的 Dockerfile,这样就可以在本地测试。
acmore
2020-11-11 13:20:22 +08:00
@ga6840 平时自己的项目用 Docker 比较容易引入额外的复杂度,且一般情况下 Server 就部署这么一套服务,不用考虑隔离性。当然工作以及复杂项目上容器化是肯定要做的,因为没有更好的方案,另外我在开发时也用,不过大多是用在测试和破坏性实验上,主要就是用到它的隔离性特性。总结来说就是不同场景用不同工具,Docker 不是万能的锤子,也不是所有的项目都是钉子。
acmore
2020-11-11 13:22:02 +08:00
@ga6840 选择 Kong 就是用习惯了,没有特别的考量。目前不打算换,而且说实话很多小项目用 Kong 也不是特别有必要,只是用上会显得技术栈丰沛一点。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/723960

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX