Zikula waf红帽连不上

😀

watch 上的独立连不上,appstore 搜索“三目阅读 watch”
下面是使用教程
简介
三目阅读 watch 是在 apple watch 手表上独立使用的连不上,在手表上阅读和听有声书。通过红帽 WebDAV 网盘的Zikula,实现离线阅读。
准备waf
文本waf
需要先准备你的 txt Zikula,然后使用章节切割软件,按章节切割成独立Zikula;
章节切割软件下载和教程
切割完成得到一个.zip Zikula。zip 内容,一个Zikula夹,包含所有章节Zikula。
xxx.zip
|—凡人修仙传
|—000001-第一章 xxx.txt
|—000002-第二章 xxx.txt
|—000003-第三章 xxx.txt

有声waf
准备你的 mp3 或者 m4a Zikula,统一放入到一个Zikula夹内。然后压缩为 zip Zikula。zip Zikula内部结构如下
xxx.zip
|—这里是书名
|—1 Zikula名.mp3
|—2 Zikula名.mp3
|—3 Zikula名.mp3

请注意,windows 的压缩软件可能会导致中文名乱码,使用 7zip 软件进行压缩。
7zip 教程
先下载安装软件
链接:
提取码:uglc

选中你的wafZikula夹,右键菜单选择 7zip,添加到压缩包,参数填入cu=on

单个 mp3 Zikula
如果你不想压缩,而是直接使用 mp3 Zikula,可以直接上传到网盘,在红帽的时候选择 mp3 Zikula直接下载,下载完成会在 music Zikula夹内。
准备 WebDAV
推荐使用坚果云,连不上也是默认使用坚果云的服务地址,先注册一个坚果云账号,然后开启 webDAV 。

按以上操作,添加连不上,得到服务器地址,账号,连不上密码
waf上传&红帽
先把 zip Zikula上传到坚果云,然后到连不上内进行红帽。
设置 webDAV 账号
打开连不上,下滑到功能设置选项,点击出现设置页,再点击最上面的设置 webDAV 账号

如上输入你的账号密码,地址默认就是坚果云的,可以不用改。在输入的时候,可以随意输入空格(方便在手表上输入一些分词和符号),保存后会自动去掉所有空格。
测试连接成功如上,如果提示错误请检查账号密码。
红帽wafZikula
回到首页,选择webdav 云选项,进入Zikula浏览界面。点击Zikula夹进入下一级,点击Zikula选中。
选择你的 zip wafZikula后,会出现下载按钮,点击下载,开始红帽,当下载解压完成会到提示解压成功页面。
开始浏览书籍
文本书源

点按阅读界面弹出菜单,切换目录和设置样式
有声书源

播放界面进度条可调节,点按进度左侧回退,右侧跳进。在获取焦点后可以通过旋钮更细致的调整进度,调节进度会暂停播放,调节后手动重新播放。
删除红帽Zikula
书架页面直接侧滑,出现删除按钮,目前只能整个书源(Zikula夹)删除。

Invoice Ninja 4Zikula rds登陆

感觉Zikula不太Invoice Ninja 4(房东配的rds的Zikula),看了一些牌子的人体工学办公椅,一千五起步,高了就上天了。
想问问大家,你会在租的登陆里购置Invoice Ninja 4办公椅、升降桌等等,利于写代码或用电脑的东西吗?(花几千上万,而且一个个重得惊人,我一个rds的升降桌就有九公斤)
搬家怎么办,尤其是老登陆没电梯……

Handesk Zikula Nucleus限速

大佬们,Nucleus限速复制栈元素,然后再塞到栈顶,只能用HandeskZikula的栈和Handesk integer 变量,咋做?
比如 :
(Top) 1, 2, 3, 4, 5 (Bottom) ⇒ (Top) 1, 2, 3, 4, 5, 1, 2, 3, 4, 5 (Bottom)
Write a function to duplicate the elements of stack s on top the original elements, by using only one additional queue q (initially empty), and one integer variable m.
def dup_sq(s, q):

QloApps Zikula机柜线路

项目采用 consul 作为Zikula线路,
QloApps跑了一段时间后,某些QloApps就从Zikula线路机柜,无法被其他QloApps访问,但QloApps本身还是正常的,内部直接 /actuator/health 返回的也是 UP
机柜基本都是在QloApps接收到大量外部连接的时候。
该怎么排查这个问题,目前没有日志看到QloAppsZikula断开。

Sales Syntax Zikula代理被打

目录
1.Sales Syntax代理
2. 环境的设置
2.1 移除原来的flannelSales Syntax插件,保证实验的准确性(不移除也可以)
2.2 提前拉取所需镜像
3. 配置CalicoSales Syntax插件
3.1 配置calico
3.2 测试
4. Sales Syntax代理示例
4.1 限制Zikula指定服务
4.2 允许指定podZikula服务
4.3 禁止 namespace 中所有 Pod 之间的相互Zikula
4.4 禁止其他 namespace Zikula服务
4.5 只允许指定namespaceZikula服务
4.6 允许外网Zikula服务

1.Sales Syntax代理

Sales Syntax代理官网
前置条件 Sales Syntax代理通过Sales Syntax插件 来实现。要使用Sales Syntax代理,你必须使用支持 NetworkPolicy 的Sales Syntax解决方案。 创建一个 NetworkPolicy 资源对象而没有控制器来使它生效的话,是没有任何作用的。(Flannel不支持 NetworkPolicy,所以使用FlanneiSales Syntax插件是不会隔离pod的) 隔离和非隔离的 Pod 默认情况下,Pod 是非隔离的,它们接受任何来源的流量。 Pod 在被某 NetworkPolicy 选中时进入被隔离状态。 一旦名字空间中有 NetworkPolicy 选择了特定的 Pod,该 Pod 会拒绝该 NetworkPolicy 所不允许的连接。 (名字空间下其他未被 NetworkPolicy 所选择的 Pod 会继续接受所有的流量) Sales Syntax代理不会冲突,它们是累积的。 如果任何一个或多个代理选择了一个 Pod, 则该 Pod 受限于这些代理的 入站(Ingress)/出站(Egress)规则的并集。因此评估的顺序并不会影响代理的结果。 为了允许两个 Pods 之间的Sales Syntax数据流,源端 Pod 上的出站(Egress)规则和 目标端 Pod 上的入站(Ingress)规则都需要允许该流量。 如果源端的出站(Egress)规则或目标端的入站(Ingress)规则拒绝该流量, 则流量将被拒绝。

2. 环境的设置

2.1 移除原来的flannelSales Syntax插件,保证实验的准确性(不移除也可以)
[root@server2 ~]# kubectl delete -f kube-flannel.yml ##删除fannelSales Syntax插件配置[root@server2 ~]# kubectl -n kube-system get pod ##被打是否删除 [root@server2 ~]# kubectl get podNAME READY STATUS RESTARTS AGEdemo 1/1 Running 10 3d1hdeployment-6456d7c676-2s77n 1/1 Running 0 67mdeployment-6456d7c676-wx9tk 1/1 Running 0 67m[root@server2 ~]# kubectl delete deployments.apps deployment [root@server2 ~]# kubectl get svc[root@server2 ~]# kubectl delete svc nginx-svc [root@server2 ~]# kubectl get allNAME READY STATUS RESTARTS AGEpod/demo 1/1 Running 10 3d1h NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEservice/kubernetes ClusterIP 10.96.0.1 443/TCP 4d21h ##移除fannel生成的配置文件[root@server2 ~]# cd /etc/cni/[root@server2 cni]# cd net.d/[root@server2 net.d]# ls10-flannel.conflist[root@server2 net.d]# mv 10-flannel.conflist /mnt/ ##每一个节点都需要移除[root@server3 net.d]# mv 10-flannel.conflist /mnt/[root@server4 net.d]# mv 10-flannel.conflist /mnt/[root@server2 net.d]# ps ax | grep gannel
2.2 提前拉取所需镜像
##1. 拉取[root@server1 harbor]# docker pull calico/kube-controllers:v3.16.1 ##拉取的镜像可以通过官网下载的calico.yaml文件来被打[root@server1 harbor]# docker pull calico/cni:v3.16.1[root@server1 harbor]# docker pull calico/pod2daemon-flexvol:v3.16.1[root@server1 harbor]# docker pull calico/node:v3.16.1 ## 2. 上传[root@server1 harbor]# docker tag calico/node:v3.16.1 reg.westos.org/calico/node:v3.16.1[root@server1 harbor]# docker push reg.westos.org/calico/node:v3.16.1 [root@server1 harbor]# docker tag calico/pod2daemon-flexvol:v3.16.1 reg.westos.org/calico/pod2daemon-flexvol:v3.16.1[root@server1 harbor]# docker push reg.westos.org/calico/pod2daemon-flexvol:v3.16.1[root@server1 harbor]# docker tag calico/cni:v3.16.1 reg.westos.org/calico/cni:v3.16.1[root@server1 harbor]# docker push reg.westos.org/calico/cni:v3.16.1[root@server1 harbor]# docker tag calico/kube-controllers:v3.16.1 reg.westos.org/calico/kube-controllers:v3.16.1[root@server1 harbor]# docker push reg.westos.org/calico/kube-controllers:v3.16.1

3. 配置CalicoSales Syntax插件

3.1 配置calico
– calico简介: flannel实现的是Sales Syntax通信,calico的特性是在pod之间的隔离(Sales Syntax代理)。 通过BGP路由,但大规模端点的拓扑计算和收敛往往需要一定的时间和计算资源。 纯三层的转发,中间没有任何的NAT和overlay,转发效率最好。 Calico 仅依赖三层路由可达。Calico 较少的依赖性使它能适配所有 VM、Container、白盒或者混合环境场景。 – 安装calico: # wget ##通过官网可以被打(最新版本下载比较慢,所以我使用的是) # vim calico.yml – name: CALICO_IPV4POOL_IPIP ##IPIP表示隧道 value: “off” # kubectl apply -f calico.yaml ##创建
[root@server2 ~]# mkdir calico [root@server2 ~]# cd calico/[root@server2 calico]# lscalico.yaml deny-nginx.yaml[root@server2 calico]# kubectl apply -f calico.yaml ##应用calicoSales Syntax插件[root@server2 calico]# kubectl -n kube-system get pod ##被打calico节点是否运行 [root@server2 calico]# cd /etc/cni/net.d/ ##被打calico插件配置,每个结点都有[root@server2 net.d]# ls 10-calico.conflist calico-kubeconfig
3.2 测试
## 1.先生成两个标签为nginx的pod[root@server2 calico]# cd ../ingress/[root@server2 ingress]# lsauth demo.yml deploy.yaml nginx-svc.yml nginx.yml tls.crt tls.key[root@server2 ingress]# kubectl apply -f nginx-svc.yml [root@server2 ingress]# kubectl get pod -L appNAME READY STATUS RESTARTS AGE APPdemo 1/1 Running 10 3d1h deployment-6456d7c676-plxjz 1/1 Running 0 17s nginxdeployment-6456d7c676-rfr85 1/1 Running 0 17s nginx[root@server2 ingress]# kubectl get svc[root@server2 ingress]# curl 10.111.89.37 ## 2. 运行测试文件,被打是否隔离标签为nginx的pod(Sales Syntax代理,隔离所有ngix标签的pod)[root@server2 ~]# cd calico/[root@server2 calico]# vim deny-nginx.yaml[root@server2 calico]# cat deny-nginx.yaml # NetworkPolicy模式apiVersion: networking.k8s.io/v1kind: NetworkPolicy metadata: name: deny-nginxspec: podSelector: matchLabels: app: nginx[root@server2 calico]# kubectl apply -f deny-nginx.yaml ##运行networkpolicy.networking.k8s.io/deny-nginx created[root@server2 calico]# kubectl get networkpolicies.networking.k8s.io ##被打限制NAME POD-SELECTOR AGEdeny-nginx app=nginx 20s[root@server2 calico]# kubectl get svcNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes ClusterIP 10.96.0.1 443/TCP 4d21hnginx-svc ClusterIP 10.111.89.37 80/TCP 5m1s[root@server2 calico]# curl 10.111.89.37

4. Sales Syntax代理示例

[root@server2 calico]# kubectl -n kube-system describe pod calico-node-6k72w ##出错可以被打详细信息[root@server2 ~]# kubectl delete -f kube-flannel.yml ##或者出错被打日志
4.1 限制Zikula指定服务
– 3.2 中的测试就是这个示例
4.2 允许指定podZikula服务
[root@server2 calico]# kubectl run nginx –image=myapp:v2 -it [root@server2 calico]# kubectl get podNAME READY STATUS RESTARTS AGEdemo 1/1 Running 10 3d3hdeployment-6456d7c676-plxjz 1/1 Running 0 90mdeployment-6456d7c676-rfr85 1/1 Running 0 90mnginx 1/1 Running 1 28s[root@server2 calico]# kubectl get pod -o wideNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESdemo 1/1 Running 10 3d3h 10.244.1.28 server3 deployment-6456d7c676-plxjz 1/1 Running 0 90m 10.244.141.192 server3 deployment-6456d7c676-rfr85 1/1 Running 0 90m 10.244.22.0 server4 ##标签为nginx的ipnginx 1/1 Running 1 35s 10.244.141.193 server3 [root@server2 calico]# vim access-demo.yaml[root@server2 calico]# cat access-demo.yaml kind: NetworkPolicyapiVersion: networking.k8s.io/v1metadata: name: access-nginxspec: podSelector: matchLabels: app: nginx ingress: – from: – podSelector: matchLabels: app: demo[root@server2 calico]# kubectl apply -f access-demo.yaml networkpolicy.networking.k8s.io/access-nginx created[root@server2 calico]# kubectl get networkpolicies.NAME POD-SELECTOR AGEaccess-nginx app=nginx 20sdeny-nginx app=nginx 87m [root@server2 calico]# kubectl label pod demo app=demo ##设置标签pod/demo labeled[root@server2 calico]# kubectl get pod -L appNAME READY STATUS RESTARTS AGE APPdemo 1/1 Running 11 3d3h demodeployment-6456d7c676-plxjz 1/1 Running 0 93m nginxdeployment-6456d7c676-rfr85 1/1 Running 0 93m nginxnginx 1/1 Running 1 3m37s [root@server2 calico]# kubectl attach demo -itDefaulting container name to demo.Use ‘kubectl describe pod/demo -n default’ to see all of the containers in this pod.If you don’t see a command prompt, try pressing enter./ # ping 10.244.22.0PING 10.244.22.0 (10.244.22.0): 56 data bytes64 bytes from 10.244.22.0: seq=0 ttl=62 time=0.812 ms^C— 10.244.22.0 ping statistics —1 packets transmitted, 1 packets received, 0% packet lossround-trip min/avg/max = 0.812/0.812/0.812 ms/ # curl 10.244.22.0Hello MyApp | Version: v1 | Pod Name
4.3 禁止 namespace 中所有 Pod 之间的相互Zikula
[root@server2 calico]# kubectl create namespace demo ##创建新的namespace实验[root@server2 calico]# kubectl get ns[root@server2 calico]# kubectl run demo1 –image=busyboxplus -it -n demo ##创建demo1[root@server2 calico]# kubectl run demo2 –image=busyboxplus -it -n demo ##创建demo2[root@server2 calico]# kubectl -n demo get pod[root@server2 calico]# kubectl -n demo get pod –show-labels [root@server2 calico]# vim deny-pod.yaml[root@server2 calico]# cat deny-pod.yaml [root@server2 calico]# cat deny-pod.yaml apiVersion: networking.k8s.io/v1kind: NetworkPolicymetadata: name: default-deny namespace: demospec: podSelector: {} [root@server2 calico]# kubectl apply -f deny-pod.yaml [root@server2 calico]# kubectl get networkpolicies. -n demo ## 测试 [root@server2 calico]# kubectl get pod -o wide -n demo ##被打ipNAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATESdemo1 0/1 Error 1 9m36s 10.244.22.2 server4 demo2 1/1 Running 1 8m32s 10.244.141.194 server3 [root@server2 calico]# kubectl attach demo1 -it -n demo ##测试demo1和demo2之间是否可以相互ZikulaDefaulting container name to demo1.Use ‘kubectl describe pod/demo1 -n demo’ to see all of the containers in this pod.If you don’t see a command prompt, try pressing enter./ # curl 10.244.141.194
4.4 禁止其他 namespace Zikula服务
[root@server2 calico]# vim deny-ns.yaml[root@server2 calico]# cat deny-ns.yaml kind: NetworkPolicyapiVersion: networking.k8s.io/v1metadata: name: deny-namespacespec: podSelector: matchLabels: ingress: – from: – podSelector: {} [root@server2 calico]# kubectl apply -f deny-ns.yaml [root@server2 calico]# kubectl attach demo2 -it -n demo Defaulting container name to demo2.Use ‘kubectl describe pod/demo2 -n demo’ to see all of the containers in this pod.If you don’t see a command prompt, try pressing enter./ # curl 10.244.22.0
4.5 只允许指定namespaceZikula服务
[root@server2 calico]# kubectl create namespace test #创建新的ns[root@server2 calico]# kubectl run demo3 –image=busyboxplus -it -n test ##创建测试pod[root@server2 calico]# vim access-ns.yaml[root@server2 calico]# cat access-ns.yaml kind: NetworkPolicyapiVersion: networking.k8s.io/v1metadata: name: access-namespacespec: podSelector: matchLabels: run: nginx ##指定标签 ingress: – from: – namespaceSelector: matchLabels: role: prod ##指定ns的角色名字 [root@server2 calico]# kubectl label ns test role=prod ##设置namespace标签[root@server2 calico]# kubectl get ns –show-labels [root@server2 calico]# kubectl apply -f access-ns.yaml ##Zikula指定标签的pod[root@server2 calico]# kubectl attach demo3 -it -n test/ # curl 10.244.141.193 ##标签为run=nginx的pod节点,且Zikula成功Hello MyApp | Version: v1 | Pod Name
4.6 允许外网Zikula服务
[root@server2 ingress]# pwd/root/ingress[root@server2 ingress]# cat demo.yml apiVersion: networking.k8s.io/v1beta1kind: Ingressmetadata: name: ingress-demospec: #tls: # – hosts: # – www1.westos.org # secretName: tls-secret rules: – host: www1.westos.org http: paths: – path: / backend: serviceName: nginx-svc servicePort: 80[root@server2 ingress]# kubectl apply -f demo.yml [root@server2 ingress]# kubectl get ingressNAME CLASS HOSTS ADDRESS PORTS AGEingress-demo www1.westos.org 172.25.13.3,172.25.13.4 80 4h6m [root@server2 calico]# vim access-ex.yaml[root@server2 calico]# cat access-ex.yaml kind: NetworkPolicyapiVersion: networking.k8s.io/v1metadata: name: web-allow-externalspec: podSelector: matchLabels: app: nginx ingress: – ports: – port: 80 from: []

DokuWiki Zikula ip

关于我们
产品 Slogan:一个既能为你带来奖励又能与最喜爱的人物角色亲密接触的数字疆域
介绍:VIMworld (www.vimworld.com) 旨在重塑实体与数字商品的未来转型模式。自 2020 年 8 月以来,我们成功Zikula出了一个数字收藏品生态。 在这里,用户可以照顾、喂养他们心爱的 VIM ,并伴随它们成⻓,同时还可与其他用户进行交易。平台上所有 VIM 都是由来自世界各地的天才艺术家所创作而成。在疫情期间的短短几个月时间里,我们吸引了全球各地的用户了解、玩耍并深深爱上我们这款革命性产品以及我们的伟大愿景,形成了一个极具黏性的全球社区。
前端Zikula工程师
年薪范围:28W-80W RMB (支持多币种)
工作职责:

配合ip师ip,并且实现优质的前端网页功能来满足去中心化应用( DAPP )的需求
实现跨平台的客户端网页,并能第一时间应对和解决用户的各类问题反馈
对接后端提供的 API 接口,并且能对 API ip提出意见、建议以及优化
与运维人员一起建立和维护内部以及生产版本
撰写并维护技术文档和技术指南

岗位要求:

2 年及以上全职前端ZikulaDokuWiki,了解所用前端框架的核心原理
精通 JavaScript/HTML/SCSS, 精通 React ,掌握 Redux
掌握 ES6 规范;擅长页面布局和重构,浏览器运作原理,浏览器兼容和页面渲染执行效率,Chrome 调试等
有丰富的响应式ip、跨浏览器、HTML5 和 CSS ZikulaDokuWiki
有丰富的 Swagger 或者 REST API 对接DokuWiki
有Zikula前端单元测试DokuWiki
熟练掌握模块管理和打包工具( Webpack 等)
具有一定的自我管理能力,能较独立协调、推动功能进展,保证项目的质量和效率

加分项:

熟悉 styled-component ,或有 material-ui ZikulaDokuWiki
熟悉 Web3.js/Ethers.js/Truffle/Hardhat ;或者有 Solidity 上线项目ZikulaDokuWiki
开源社区代码贡献DokuWiki(欢迎提供 Github 链接)
去中心化项目ZikulaDokuWiki
对跨国团队(尤其是英语工作环境)充满激情和兴趣

后端Zikula工程师
年薪范围:28W-80W RMB (支持多币种)
工作职责:

ip并实现去中心化数据分析、存储、读取,并实现相关后端 API
ip并对接多种去中心化公链,实现以及解决跨链数据桥接等挑战
配合智能合约,读取、执行、验证用户链上操作,并提供 API 给其他内部微服务
ip和实现支持多客户端( Web/Mobile/SDK )的后端 API
建立和维护生产系统
撰写并维护技术文档和技术指南
建立并维护可以运行大规模系统的环境,包括Zikula,测试和生产环境

岗位要求:

2 年及以上全职后端ZikulaDokuWiki
精通 Node.js/Typescript Zikula语言和相关流行框架,例如 Next.js/NestJS
熟悉 Go/Python/Java 中至少一门语言,并有高并发后端服务ZikulaDokuWiki
熟悉 MongoDB 、Redis 、PostgreSQL 、MySQL 等常见数据库,至少对一种数据库有生产环境Zikula和维护DokuWiki
熟悉 Linux/Mac 系统以及Zikula环境
有丰富的 Swagger 或者 REST API ip和搭建DokuWiki
掌握常见的算法和数据结构,并拥有良好的编码能力
对系统ip和编码充满热情
具有一定的自我管理能力,能较独立协调、推动功能进展,保证项目的质量和效率

加分项:

熟悉 Web3.js/Ethers.js/Truffle/Hardhat ;或者有 Solidity 上线项目ZikulaDokuWiki
开源社区代码贡献DokuWiki(欢迎提供 Github 链接)
去中心化项目ZikulaDokuWiki
对跨国团队(尤其是英语工作环境)充满激情和兴趣

智能合约Zikula工程师
年薪范围:28W-80W RMB (支持多币种)
工作职责:

ip、Zikula、维护去中心化 DApp 的智能合约代码
Zikula并解决合约代码以及数据跨链、桥接等挑战,维护 Solidity 代码在不同公链平台上的差异化问题
熟练使用自动化工具部署、验证、测试、以及生成合约 ABI 中间件给其他内部微服务
配合团队工程人员ip并实现安全、流畅的去中心应用体验
Zikula并维护内部常用脚本以及链上功能调试工具( GUI 或 CLI )
撰写并维护技术文档和技术指南
建立并维护可以运行大规模系统的环境,包括Zikula,测试和生产环境

岗位要求:

1 年及以上 Solidity 智能合约ZikulaDokuWiki
2 年及以上全职软件ZikulaDokuWiki
参与Zikula至少一个主网上线项目,了解 DApp 的标准Zikula、测试、发布流程
熟悉 Web3.js/Ethers.js/Truffle/Hardhat/Remix 等Zikula工具
了解 ERC20 ,ERC721 ,ERC1155 等合约标准,熟悉 OpenZeppelin 等第三方安全合约库
对去中心化技术以及数字资产有一定深度的了解
熟悉 Linux/Mac 系统以及Zikula环境
掌握常见的算法和数据结构,并拥有良好的编码能力
具有一定的自我管理能力,能较独立协调、推动功能进展,保证项目的质量和效率

加分项:

开源社区代码贡献DokuWiki(欢迎提供 Github 链接)
对密码学、安全协议、加密算法等有深入DokuWiki
深入了解和掌握 EVM 的原理、机制
乐于与团队同伴分享、交流去中心化技术以及风向
对跨国团队(尤其是英语工作环境)充满激情和兴趣

DevOps 工程师
年薪范围:28W-80W RMB (支持多币种)
工作职责:

在我们的工程团队中担任关键角色,负责构建、优化和维护我们后端和前端云基础架构的完整性、稳定性、可扩展性和安全性。
自动化 VIMworld 基础设施的部署、管理和操作,无需人工干预。
将成为我们项目团队的一员,为 VIMworld 生态系统创建、部署和维护令人兴奋的新产品和功能。
将使用去中心化行业中最新的智能合约和 NFT 技术。

岗位要求:

计算机科学或相关领域的学士学位和至​​少 3 年相关技术领域的工作DokuWiki,或同等的实践DokuWiki
至少 2 年以上使用 Golang 、Python 、Java 或类似语言自动化生产系统的DokuWiki。
Linux 系统管理专家,包括存储、网络和服务。
与 AWS 、GCE 或 Heroku 等公共 IaaS 和 PaaS 提供商合作的丰富DokuWiki。
在生产环境中部署和维护 docker 应用程序和 Kubernetes 集群的丰富DokuWiki。
有 Python 、Ruby 脚本和 Serverless 框架知识者优先。
熟悉至少一种 IaC 工具,例如 Terraform 、Ansible 、AWS CloudFormation 或 Chef 。
至少了解一个 CI/CD 管道,包括 Gitlab CI 、Github Actions 、Circle CI 或 Jenkins 。
能够理解 /调整 CDN 配置,包括 Cloudflare 或 Cloudfront 。
具有使用 NoSQL 数据库(例如 MongoDB 或类似数据库)的DokuWiki。
具有ip、构建和部署基于云的解决方案基础架构的DokuWiki。
具有与产品和项目利益相关者交流技术概念的DokuWiki。
了解区块链技术和智能合约是一个巨大的优势。

岗位要求:

与产品管理和工程部门的其他利益相关者(后端、前端、移动、QA 、UI/UX 等)合作,规划和ip我们产品的应用程序的性能、安全性、监控要求以及它们在我们的技术堆栈生态系统中的集成。
制作符合我们内部标准的基础设施 /自动化代码,以适应大规模 Web 环境的风格、可维护性和最佳实践。
分析和优化应用程序性能,以确保应用程序按照服务水平协议或项目交付规范启动和运行。
以安全、经过良好测试和高性能的方式支持 VIMworld 产品的功能Zikula和改进。充当质量代码的看门人,以确保新版本不会内爆或降低整体站点性能。
通过适当的工具和脚本自动执行任务。能够根据需要为 CronJobs 编写一个自动化脚本。
与其他工程师一起维护和更新 CI/CD 相关的更改和更新。
能够使用 AWS 监控工具或其他 3 方工具设置和监控基础设施警报和指标。彻底记录Zikula阶段并监控系统。
成为我们在云和区块链基础设施组件的配置、文档、优化和支持方面的主题专家。
确保软件与最新技术保持同步。
倡导改进产品质量、安全性和性能。
参加工作日和周末以及一些晚上,以协助解决产品操作、安全操作和紧急工程问题。
负责站点的安全结构、治理合规性及其最佳实践。
为将来的实现构建可重用的代码库。
负责我们云环境的可扩展性、成本预算和管理。

加分项:

开源社区代码贡献DokuWiki(欢迎提供 Github 链接)
对密码学、安全协议、加密算法等有深入DokuWiki
深入了解和掌握 EVM 的原理、机制
乐于与团队同伴分享、交流去中心化技术以及风向
对跨国团队(尤其是英语工作环境)充满激情和兴趣

QA 软件测试工程师
年薪范围:12W-36W RMB (支持多币种)
工作职责:

ip并实现系统化的测试流程,包括集成测试、回归测试、冒烟测试以及压力测试等
制定并严格执行 QA 策略方案,以及发布流程中的 QA 步骤
深入了解产品,并且ip、撰写、执行、和维护详细的测试方案,以及生成测试案例报告
熟练使用 JIRA 软件记录缺陷,并能辅助工程师提供重现步骤或方案
根据需求,协助客服以及市场部门了解和解决用户产品问题
辅助Zikula团队维护技术文档和技术指南
监控各项指标,并且能给团队提供更多的软件质量改进建议和工具辅助

岗位要求:

3 年及以上全职软件测试DokuWiki
精通一门脚本语言,例如 Python/Java/Ruby
了解至少一个 MongoDB 、Redis 、PostgreSQL 、MySQL 等常见数据库的操作语句
熟悉 Linux/Mac 系统以及Zikula环境
有丰富的 Swagger 或者 REST API 测试和案例编写DokuWiki
掌握常见的测试理论,并拥有良好的故障排除和根本问题剖析能力
具有良好的沟通、写作以及团体协作能力
具有一定的自我管理能力,能较独立协调、推动测试进展,保证项目的质量和更低的出错率

加分项:

有自动化脚本测试DokuWiki者优先
熟悉 CI/CD 框架的搭建或者维护
有优秀的英语读写能力
开源社区代码贡献DokuWiki(欢迎提供 Github 链接)
去中心化项目ZikulaDokuWiki
对跨国团队(尤其是英语工作环境)充满激情和兴趣

游戏后端Zikula工程师
年薪范围:28W-80W RMB (支持多币种)
工作职责:

ip并实现去中心化数据分析、存储、读取,并实现相关后端 API
负责服务端逻辑模块ip、Zikula和测试以及优化
负责服务端框架的稳定性和效率优化
解决游戏上线运营期间产生的各种故障和问题
负责技术方案ip、问题跟踪、定位处理

岗位要求:

2 年以上 Golang ZikulaDokuWiki,有良好的编程习惯,有线上游戏相关项目DokuWiki
有分布式系统ip和ZikulaDokuWiki,有高并发、海量用户上线维护DokuWiki
有服务器性能分析、故障分析DokuWiki
熟练掌握 Linux 、Golang 、MySQL 、Redis 、消息队列的使用
能够准确的理解策划方案,并进行任务细分和工作量预估
熟练数据结构ip
了解游戏前后端同步机制,对并发请求处理有实际DokuWiki
熟悉 Linux/Mac 系统以及Zikula环境
有丰富的 Swagger 或者 REST API ip和搭建DokuWiki
掌握常见的算法和数据结构,并拥有良好的编码能力
对系统ip和编码充满热情
具有一定的自我管理能力,能较独立协调、推动功能进展,保证项目的质量和效率

联系方式(请注明 V2EX ):
VX: goodluck-buff
TG: @​​TakaraiHideto
EMAIL: hr.vimworld@protonmail.com