Thursday, April 22, 2021

V2EX - 技术

V2EX - 技术


有没有比较优雅的合并两个列表的方法?

Posted: 22 Apr 2021 04:26 AM PDT

a = [1,2]
b = [a,b,c,f]

l = [[1,a],[1,b],[1,c],[1,f],[2,a],[2,b],[2,c],[2,f]]

请问,除了双层 for 循环之外还有别的办法吗?

ios 新手问题求解

Posted: 22 Apr 2021 04:20 AM PDT

clone 了一个库,里面有 Pods 文件夹里,文件夹里有很多依赖了,但是编译运行的时候,还是提示没引入,何解?

Showing All Messages
Undefined symbol: _OBJC_CLASS_$_xxxxxx

苹果支持 RX 6000 系了

Posted: 22 Apr 2021 04:06 AM PDT

周三苹果发布了 macOS 11.4 的首个 Beta 测试版本,为 Intel Mac 机型添加了对 AMD RDNA 2 架构的 Navi 系列 GPU 的支持。

预示:不久的将来 hackintosh 最牛逼的是 6900xt 显卡,but 我已经放弃黑果了,只是传播一条消息。

德华们,我最近用 golang 写了一个 elasticsearch 的可视化管理工具,帮我看看有哪些需要优化或添加的功能可以吗

Posted: 22 Apr 2021 04:05 AM PDT

由于含有应用程序的压缩包在 Releases 始终发不上去,所以暂时上传到源码的根目录了,这个工具跟市面上现有的 es 管理工具比,肯定不成熟,望大佬轻喷,多给晚辈一点宝贵意见,让晚辈汲取到更多的精华

现在做原生 app 都采用什么方案比较好呢

Posted: 22 Apr 2021 03:36 AM PDT

原定计划招聘 Android 与 iOS 原生开发做 APP 请问 V2EX 上做过 flutter 两端开发的大佬们 还有更好的方案么? 这几年一直没做过 app, 遇到招人的事情很懵逼

JetBrains 全家桶,是每种语言分别安装一个 IDE 好,还是只用 Idea 好

Posted: 22 Apr 2021 03:35 AM PDT

我目前主要写前端、golang,偶尔写写 python 、java,c++,比较少

前段时间刚刚开始使用 JetBrains 的 IDE,暂时还没买正版,是试用 30 天,目前是每种语言安装一个 IDE,要安装这么多: WebStorm,Idea,GoLand,PyCharm,CLion 感觉最大的困难是不同 IDE 直接的设置同步(快捷键、code stype ),经常改一个快捷键,要打开好几个 IDE 分别设置一遍。我还没注册过 Jetbrains 账号,目前是试用 30 天,不知道 Jetbrains 的账号同步功能,跨 IDE 之间的同步设置是否好用。

一直有个念头,只用 Idea,其他语言通过安装插件实现

有没有 Jetbrains 的深度用户"现身说法"一下,者两种利弊如何?

thrift 的 TServiceClient 是线程安全的么?

Posted: 22 Apr 2021 03:29 AM PDT

想多线程下使用同一个 TServiceClient, 但看

https://stackoverflow.com/questions/37674466/how-to-make-a-thrift-client-for-multiple-threads

说并不是安全的. 网上其它资料也没多少.

铁子们有知道内情的么?

Python 查找元素并记录问题,恳请给个思路。

Posted: 22 Apr 2021 03:27 AM PDT

if_list=["oo","不存在"] list_data=["aab","abb","bba","acc","adcd","bao","ccd"]  str_="aa"  for a_list in list_data:      if str_[-2:] == a_list[:2]:      	if_list.append(a_list[-1])      else:      	if_list.update("不存在") 

我想循环 list_data 列表,当 str_="aa"有和列表中元素前面两个字符相同的,则返回对应元素最后一个,没有相同的,也要返回"不存在",但是我这个程序不相同的,返回了"不存在"多个了,有什么好的设计呢? 恳请给个思路。

一直好奇各大云服务商对虚拟化服务器的支撑技术到底用的是什么?自研, VMware 还是 VirtualBox?

Posted: 22 Apr 2021 03:26 AM PDT

卸载一加内置的 OPPO 浏览器后,云存储功能不能用了

Posted: 22 Apr 2021 02:34 AM PDT

用 adb 卸载一加内置的 OPPO 浏览器后,云存储功能不能用了。之前停用是不影响的。

然后在应用商店重装了一个浏览器,还是不行。。把云存储也给干掉了。

现在云存储,找回手机功能都没了。。这简直是匪夷所思,云存储依赖内置浏览器...

暂时没发现其它受影响的应用。

准备把小布语音助手也干掉。。。

HTTPS 抓包,即便安装成系统证书,好像还是不太行

Posted: 22 Apr 2021 02:12 AM PDT

楼主试了 MuMu 模拟器( Android 6.0 )。

按照网上的教程(比如 mitmproxy 提供的教程,虽然我用的不是 mitmproxy ):
(1)WiFi 设置里,需要设置代理服务器为手动,填入抓包软件开的代理 IP 和端口。
(2)需要把抓包软件的根 CA 证书转成 PEM 格式,然后用 openssl x509 -subject_hash_old 查到类似 1234abcd 的哈希值,再把 PEM 格式的证书重命名成 1234abcd.0 、丢到 /system/etc/security/cacerts/下面。
(3)最后重启模拟器。

一套折腾下来,结果怎么样呢?

很有意思:
(1)用自带浏览器打开 https www . ipip . net
报错,证书错误;
(2)打开 https www . grc . com
欸,这回不报错啦,正常打开。
点开证书信息,也是抓包软件的 MITM 证书,绿色对勾,有效。
(3)清空自带浏览器的数据,再试试?
还是老样子,并没有什么变化……

我看了模拟器里现存的其他证书,貌似里面的内容大概是这样:
(大概就那个意思)
-- BEGIN CERTIFICATE --
一坨 base64
-- END CERTIFICATE --
( openssl x509 转出来的 PEM 证书只含有上面的部分,不含有下面的部分)
人类可读的,文本格式的证书信息,包括主题、密钥等等
SHA1 Fingerprint

于是我就用 openssl x509 照葫芦画瓢了一下……然后,不出意外地……
情况还是那个情况,并没有什么变化。


那么,换个模拟器,比如 Android studio 自带的 AVD ?

楼主之前折腾过一个 Android 11 的 AVD,用 github 上 newbit1 的 rootAVD 脚本给它刷了 magisk,然后安装 edxposed,都是正常的。
然后,楼主试了 magisk 官方仓库里的 movecert 模块。先在设置里安装为用户证书,然后重启,等着 movecert 把用户证书转换成系统证书。
结果呢?

模拟器它直接黑屏了……压根开不了机……adb shell 都进不去

我不服气,强关掉模拟器,重启它,按音量-按钮进了安全模式,然后发现,/data/adb/modules/movecert/system/etc/security/cacerts/里面的证书文件(文件名就是上面看到过的 1234abcd.0 )貌似不是 base64 的,而是二进制的;而我自己用 openssl 转出来的 PEM 是 base64 的。于是我就用 cat 命令把它覆盖掉,(当然,magisk 模块的 disable 要删掉)再重启。

不出意外地……嗯……还是黑屏了……还是 adb shell 都进不去


楼主表示自己已经凌乱了……

WSLg: WSL GUI 进入 Insider Preview

Posted: 22 Apr 2021 02:12 AM PDT

GCP 香港废了么,绕荷兰

Posted: 22 Apr 2021 01:43 AM PDT

vscode 插件 npm install 出现了问题

Posted: 22 Apr 2021 12:19 AM PDT

[vagrant@localhost python-import-helper]$ npm install  > cqh-python-import-helper@0.0.242 postinstall /home/vagrant/vcode/python-import-helper > node ./node_modules/vscode/bin/install  Detected VS Code engine version: ^1.34.0 Error installing vscode.d.ts: Error: Request returned status code: 404 Details: <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>Error</title> </head> <body> <pre>Cannot GET /api/releases/stable</pre> </body> </html>  npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! cqh-python-import-helper@0.0.242 postinstall: `node ./node_modules/vscode/bin/install` npm ERR! Exit status 1 npm ERR!  npm ERR! Failed at the cqh-python-import-helper@0.0.242 postinstall script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above.  npm ERR! A complete log of this run can be found in: npm ERR!     /home/vagrant/.npm/_logs/2021-04-22T03_15_00_071Z-debug.log 

这是 npm 的问题,还是 vscode 的问题呀?

换了一台电脑就这个样子了。

vue iview 导出 csv 时数据为空

Posted: 21 Apr 2021 11:44 PM PDT

使用 iview 导出 csv 表格时,里面数据为空,这是咋回事.

<template>   <div>       <Input v-model="keyword" placeholder="搜索关键字" class="input" @keyup.enter.native="handleFilter" />       <Button @click="handleFilter" class="button" type="primary" icon="ios-search">搜索</Button>       <Button @click="exportData" class="download-button" type="primary" icon="ios-download-outline">导出数据</Button>       <Table :show-header="false" :data="tableData" :columns="columns" ref="tables">         <template slot-scope="{ row }" slot="url">           <div v-if="row.url" class="div">            <a target="_blank" :href="row.url" > {{ row.url }}</a>            <Button @click="doCopy(row.url)" type="info" class="fuzhi" size="small">复制</Button>           </div>         </template>                </Table>       <Page           class="page"           :current="this.page.pageNum"           :page-size="this.page.pageSize"           :total= "this.page.count"           :page-size-opts="[10,20,30,50,100]"           show-sizer           show-elevator           show-total           @on-change="handlePage"           @on-page-size-change="handlePageSize">       </Page>   </div> </template>  <script> import RSA from '@/libs/crypto' import { search } from '@/api/search' export default {   inject: ['reload'],   name: 'SearchIndex',   data () {     return {       token: getToken(),       keyword: '',       page: {         pageNum: 1,         pageSize: 10,         count: 0       },       columns: [         {           slot: 'url',           align: 'center'         },         {           slot: 'banner'         }       ],       tableData: []     }   },   methods: {     getTableData () {       let data = {         'pagenum': this.page.pageNum,         'pagesize': this.page.pageSize,       }       data = JSON.stringify(data)       let params = { 'data': RSA.Encrypt(data) }       search(params).then(response => {         this.tableData = response.data         this.page.count = response.total       })     },     exportData () {       this.$refs.tables.exportCsv({         filename: `${(new Date()).valueOf()}.csv`       })     }   } } </script> 

上架 Google Play 遇到 Ssl error handler 问题

Posted: 21 Apr 2021 10:24 PM PDT

如题,提交应用的时候,google 给回了一封邮件: 大致内容如下:

Hello Google Play Developer,

We reviewed xxx, with package name xxxx, and found that your app uses software that contains security vulnerabilities for users. Apps with these vulnerabilities can expose user information or damage a user's device, and may be considered to be in violation of our Malicious Behavior policy.

Below is the list of issues and the corresponding APK versions that were detected in your recent submission. Please migrate your apps to use the updated software as soon as possible and increment the version number of the upgraded APK.

SSL Error Handler For more information on how to address WebView SSL Error Handler alerts, please see this Google Help Center article.

我按照Google Help Center article 这个地址处理了我 onReceivedSslError 方法,跟服务器要了 https 证书的 sha256 指纹,然后比对错误证书的指纹是否和服务器的指纹一直,如果一直才去sslErrorHandler.proceed() 否则 sslErrorHandler.cancel()

提交之后,还是收到邮件反馈说是 ssl error handler,我也试了这里的方法stackoverflow 当出现错误的时候,弹出对话框询问用户是否继续访问,让用户决定,但是也没有用。

不知道 v 站的各位大佬有没有遇到这种情况。

7 篇 Go+gRPC-Gateway 小程序登录鉴权服务实战(含 Demo)

Posted: 21 Apr 2021 10:20 PM PDT

系列

  1. 云原生 API 网关,gRPC-Gateway V2 初探
  2. Go + gRPC-Gateway(V2) 构建微服务实战系列,小程序登录鉴权服务:第一篇
  3. Go + gRPC-Gateway(V2) 构建微服务实战系列,小程序登录鉴权服务:第二篇
  4. Go + gRPC-Gateway(V2) 构建微服务实战系列,小程序登录鉴权服务(三):RSA(RS512) 签名 JWT
  5. Go+gRPC-Gateway(V2) 微服务实战,小程序登录鉴权服务(四):自动生成 API TS 类型
  6. Go+gRPC-Gateway(V2) 微服务实战,小程序登录鉴权服务(五):鉴权 gRPC-Interceptor 拦截器实战
  7. Go+gRPC-Gateway(V2) 微服务实战,小程序登录鉴权服务(六):客户端基础库 TS 实战

Demo: go-grpc-gateway-v2-microservice

我是为少 微信:uuhells123 公众号:黑客下午茶 加我微信(互相学习交流),关注公众号(获取更多学习资料~) 

现在 vscode 里面 tab 怎么不起作用?

Posted: 21 Apr 2021 09:50 PM PDT

以前 tab 不是可以添加缩进的吗,现在直接光标没了?

手把手教你从数据预处理开始体验图数据库

Posted: 21 Apr 2021 09:05 PM PDT

封面图

本文首发于 Nebula 公众号:手把手教你从数据预处理开始体验图数据库,由社区用户 Jiayi98 供稿,分享了她离线部署 Nebula Graph 、预处理 LDBC 数据集的经验,是个对新手极度友好的手把手教你学 Nebula 分享。

这不是一个标准的压力测试,而是通过一个小规模的测试帮助我熟悉 Nebula 的部署,数据导入工具,查询语言,Java API,数据迁移,以及集群性能的一个简单了解。

准备

所有的准备都需要找个有网的环境

  1. docker RPM 包 https://docs.docker.com/engine/install/centos/#install-from-a-package
  2. docker-compose tar 包 https://github.com/docker/compose/releases
  3. 提前下载镜像 [https://hub.docker.com/search?q=vesoft&type=image]( https://hub.docker.com/search?q=vesoft&type=image ),将 metad 、graphd 、storaged 、console 、studio 、http-gateway 、http-client 、nginx 、importer (用 docker save xxx 命令将拉好的镜像导出成 tar 包)
  4. 配置文件 https://github.com/vesoft-inc/nebula-docker-compose/blob/docker-swarm/docker-stack.yaml
  5. nebula-studio GitHub 上下载 zip 包 https://github.com/vesoft-inc/nebula-web-docker

安装

  1. 安装 Docker:
$ rpm -ivh <rpm 包> $ systemctl start docker --启动 $ systemctl status docker --查看状态 
  1. 安装 docker-compose
$ mv docker-compose /usr/local/bin/ --把 docker-compose 文件移动到 /usr/local/bin $ chmod a+x /usr/local/bin/docker-compose --改权限 $ docker-compose -version 
  1. 导入镜像
$ docker load <镜像 tar 包> $ docker image ls 
  1. 在机器 manager machine 上执行以下命令初始化 Docker Swarm 集群:
$ sudo docker swarm init --advertise-addr <manager machine ip> 
  1. 根据提示在另一台服务器上以 worker 的身份 join swarm
$ docker node ls 
  • 添加 worker node 如果出现以下报错:

Error response from daemon: rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing dial tcp 172.16.9.129:2377: connect: no route to host"

一般是防火墙未关闭导致的(用以下方式关闭防火墙)。

$ systemctl status firewalld.service $ systemctl disable firewalld.service 
  1. 在 manager 节点上改写 docker-stack.yml,并创建 nebula.env
-- nebula.env TZ=UTC USER=root 
  • Yaml file 里的 hostname 多台机器不可同名,启动时的错误多半是因为配置文件写得有问题,v1 升级 v2 也只需要把配置文件里的镜像换一下就可以了。
  1. 在 manager 节点上动 nebula 集群
$ docker stack deploy <stack name> -c docker-stack.yml 

这里附带一些我 Debug / 检查方法:

$ docker service ls --查看服务状态 $ docker service ps <NAME/ID> --查看某一个具体的状态 $ docker stack ps --no-trunc <stack name> --查看 stack 里所有的进程 
  1. 安装 Studio

代码文件夹里是 v1,有一个 v2 的文件夹里是 v2

$ cd nebula-web-docker 

$ cd nebula-web-docker/v2 $ docker-compose up -d -- 构建并启动 Studio 服务;  

其中,-d 表示在后台运行服务容器

启动成功后,在浏览器地址栏输入:http://ip address:7001

测试

我用的 LDBC 。

准备

  1. 获取源码 https://github.com/ldbc/ldbc_snb_datagen/tree/stable,scale factor 1-1000 用 stable branch 。
  2. 下载 hadoop-3.2.1.tar.gz: http://archive.apache.org/dist/hadoop/core/hadoop-3.2.1/
  3. LDBC 数据预处理

LDBC 数据预处理

这里需要说明一下,要注意你用的 nebula 版本是否支持 "|" 作为分隔符

ldbc 的所有 vertex 和 edge 的 ID / index 都有问题,需要处理一下使得所有 vertex 的 ID 变为 unique key 。

我的做法是每个 vertex 我都给一个前缀,比如 person,原始 ID 为 933,变为 p933 。(为了试用一下我自己搭的 CDH 我用 Spark 做的数据预处理,处理过的数据放在 HDFS 以便后面用 nebula-exchange 导入)

硬件资源

硬件资源

备注:Nebula 不推荐使用 HDD,但我也没有 SSD, 最后测试结果证明 HDD 真的很弱。

服务分布

3 节点,服务分布如下

  • 192.168.1.10 meta,storage
  • 192.168.1.12 graph,meta,storage
  • 192.168.1.60 graph,meta,storage

2 图空间:

  1. csv:10 个 partition
    1. 原始数据约 42 M
    2. 7 千多个点,40 万条边
  2. test:100 个 partition
    1. 原始数据约 73 G
    2. 1.1 亿多个点,28.2 亿多条边( Edge: 1,101,535,334 ; Vertex: 282,612,309 )

导入 Nebula 之后,占用储存空间共约 76 G,其中 wal 文件占 2.2 G 左右。

没有做导入的测试,一部分用了 Nebula-Importer 导入,一部分用了 Exchange 导入:

数据导入结果

开始测试

测试方法:

  1. 选取 1000 个 vertex,进行 1000 次查询的平均值

数据测试结果

  • 三度超时是将 timeout 参数调高至 120 秒后的结果,后来在终端执行了一次三度发现要三百多秒。

最后,希望这份文档对和我一样的小白们有帮助,也感谢一直以来社区和官方的答疑解惑。

Nebula 真的让用户感到真的非常 supportive,在学习使用 Nebula 的过程中我也收获了很多~

进一步交流

交流图数据库技术?加入 Nebula 交流群请先填写下你的 Nebulae 名片,Nebula 小助手会拉你进群~~

要不要看看 [美团的图数据库系统] 、 [微众银行的数据治理方案] 以及其他大厂的风控、知识图谱实践?Follow Nebula 公众号NebulaGraphCommunity 回复「 PPT 」即可习得大厂实践技能 ^^

推荐阅读

请问 Pixel 1 代目前还可以不占用空间以原画质上传照片吗?

Posted: 21 Apr 2021 08:35 PM PDT

最近有大量照片需要上传到 Google Photos 上,但是我的 Google One 只买了 100G 档位可能不够。

听说 2022 年 2 月 1 日 之前 Pixel 手机还可以不占用空间以原画质上传照片,于是我想收个 Pixel 上传照片,不知道 Pixel 1 代是否还享受这个福利。

另外,在购买手机的时候是否有什么需要注意的,比如手机在某些情况或者状态下,这个福利会失效。

感谢感谢

tar 命令请教

Posted: 21 Apr 2021 07:37 PM PDT

写了个 crontab 任务运行备份脚本,想把 hdd 文件夹中大于 100M 的文件及某些格式筛除后,再用 tar 打包放在 dropbox 目录下备份。试运行了下,发现遇到文件名中有空格的就报错,而且压缩出来的包明显比原文件夹大

$ find ./hdd -type f -size -100M -print0 | xargs tar -zcpf ~/Dropbox/backupfile/hdd-"$(date '+%Y-%m-%d').tar.gz"  --null -T - --exclude='*psd' --exclude='*.key' ./hdd tar: 2.jpg: Cannot stat: No such file or directory tar: Error exit delayed from previous errors. 

所以我先把所有的空格替换为_,没报错了

find ./hdd -type f -name "* *" -exec rename "s/\s/_/g" {} \; find ./hdd -type f -size -100M -print0 | xargs tar -zcpf ~/Dropbox/backupfile/hdd-"$(date '+%Y-%m-%d').tar.gz"  --null -T - --exclude='*psd' --exclude='*.key' ./hdd 

之后试了另一种写法,也不会报错

find ./hhd -type f -size -100M -print0 | xargs tar -czf ~/Dropbox/backupfile/hhd-"$(date '+%Y-%m-%d').tar.gz"  --null -T - --exclude='*psd' --exclude='*.key' ./hhd 

不明白问题出在哪里,还有另一个问题:压缩包里有个 PDF 文件大小为 187M,find 筛选无效怎么破?

我是 macOS 下的 tar,纯小白请勿见笑。

本地跨域问题

Posted: 21 Apr 2021 05:53 PM PDT

需求:自己写了一个脚本,想在手机上用,类似 index.html,有 gui 。问题是浏览器安全策略导致所有跨域请求都发不出去。

目前只想到 2 个解决办法:
1 、自己写一个 native apk,绕过去

2 、下载一个低版本,或者可以自定义安全策略的浏览器

个人移动端浏览器可 diy 性好低,基本也装不了插件。看看有没有 dalao 有什么想法

求助大佬:系统中了挖坑病毒后, authorized_keys 无法访问了

Posted: 21 Apr 2021 02:24 PM PDT

前两天发现系统中了挖坑病毒,清理病毒后出现 authorized_keys 无法访问的情况,具体如下:

1. 任何用户包括 root 用户,任何路径下(不光是 .ssh 目录)试图创建 authorized_keys 这个文件,只要执行 'touch authorized_keys',就会报以下错误:touch: 无法创建"authorized_keys": 没有那个文件或目录。touch 其它文件正常没问题。

2. 如果执行 'mv 其它文件 authorized_keys' 后,authorized_keys 会生效。但文件列表却看不到这个文件,感觉就像 authorized_keys 虽然存在但被隐藏了起来一样,而且对它进行打开、编辑和删除等任何操作都无法执行。包含这个隐藏文件的目录甚至都无法删除。

3. 只要文件名包含 authorized_keys,都会出现以上两个问题。

请教大佬,是什么情况?是挖坑病毒的问题,还是 ssh 配置问题?

求救! python3.7 如何 mock.patch 一个装饰器装饰过的函数??

Posted: 21 Apr 2021 11:18 AM PDT

如题:python3.7 如何 mock.patch 一个装饰器装饰过的函数??网上有关于如何 mock 装饰器的例子,但是都跑不通。 比如这个例子就不行 https://www.jianshu.com/p/70a0bc3e3dc4

# yyy.py import functools   def timeit(func):    @functools.wraps(func)    def wrap(*args, **kwargs):        print('timeit')        return func(*args, **kwargs)     return wrap   @timeit def foo():    print('foo')  
# xxx.py import functools from unittest import TestCase, main from unittest import mock   def mock_timeit(func):     @functools.wraps(func)     def wrap(*args, **kwargs):         print('mock timeit')         return func(*args, **kwargs)      return wrap   mock.patch('yyy.timeit', mock_timeit).start()  import yyy   class YYYTestCase(TestCase):      def test_yyy(self):         print(yyy.foo())  # 应该输出 mock timeit   if __name__ == '__main__':     main()   

有个加拿大的前同事打算合作进口点食品(预包装)过来国内出售,想通过小程序商城来建立销售网络(批发或者零售)

Posted: 21 Apr 2021 10:06 AM PDT

请问小程序商城这种需要什么样的前置资格,只要办理个附件这样的食品经营许可证就可以了吗? 谢谢. -进出口权,美金账户什么都有了.

https://ae01.alicdn.com/kf/U614c1a3f4b1540e2b10da2f83dc5d0c3s.jpg

求助, 为现有的 thrift rpc 服务添加 tracing 功能

Posted: 21 Apr 2021 05:19 AM PDT

背景

1. rpc 使用的是 thrift, thrift 都已定义好
2. tracing 使用 opentracing api

问题:

发送 RPC 请求时会带上 Tracing 数据才能完成链路追踪, 但是现在 thrfit 都已定义好了, 如何在发送 RPC 请求时再带上 tracing 数据呢?


俺想不出什么方案, 有没有铁子来给俺一下提示啊~~~

Java 的 jfinal 框架现在是怎么回事?官网不能登录注册,开源中国也屏蔽了 Jfinal。

Posted: 21 Apr 2021 03:40 AM PDT

jfinal 是 java 的一个框架,定位是几乎全栈,我想反馈和提一些建议,但我发现,官网不能登录,也不能注册,一些反馈回答没有了。

开源中国也屏蔽了几乎所有与 Jfinal 相关的存在,包括开发者的开源中国账户,以及 jfinal 框架在开源中国的提问。

是做了什么不得了的事情么?

logging 模块偶尔丢日志

Posted: 21 Apr 2021 12:35 AM PDT

我的服务每分钟会写一条日志,但是发现偶尔会没有日志。
数据库中的 trigger 记录下来每分钟正确的修改了记录,但是日志文件里面却没有记录。

有人有解决思路建议嘛?

No comments:

Post a Comment