看文档,
srv := asynq.NewServer(
asynq.RedisClientOpt{Addr: ":6379"},
asynq.Config{Concurrency: 20}, //并发控制
)
h := asynq.NewServeMux()
// ... Register handlers
// Run blocks and waits for os signal to terminate the program.
if err := srv.Run(h); err != nil {
log.Fatal(err)
}
这个是对于整个项目的并发,现在只需要对于不同任务的并发控制,不知道怎么实现。
]]>她的情况:88 年的。离过婚,没有小孩,初中文凭。两段恋爱,1:18 年被迫相亲结婚,一年后离婚,理由:对方对她爱答不理,没在一起的必要。2: 19-22 年,谈了四年的男朋友分手了,理由:出轨。 她还流过两次产,因为不想要孩子,导致输卵管发炎,自然受孕几率不大,她说可以做试管受孕
小插曲:过年期间她可能知道我们以后没有未来,然后她提出了分手,要互删,我一直在说不想互删,中间她确实删我了,但被我用某种理由又加回来了,然后后面一直聊了很多,她突然说不想分手,然后又在一起了(说这个想表达的意思是她的好:不是她缠着我非我 book )
她对我真的好,照顾了我半年(做了半年的饭),用她的话说是陪吃陪睡陪聊陪睡(分手期间说的话)
我顾虑的点:半年一直没上班(我说过让她找工作,不找的理由是不想打工,还有就是只想找离家近的,因为不会骑电瓶车,更不想坐地铁,因为路痴,我直接一个不理解的无奈,哈哈),说实话就是不想上班。她前夫什么的都是稍微有点小钱的,所以她花钱是大手大脚的。还有就是怕被拿捏
接上文:所以她经常说我抠,(我确实对她没咋花钱,因为我一开始就没抱希望,问题也在这,还和我相处了大半年),我也问过为什么要和我在一起 1:年轻,哪方面都好,2:有手艺以后日子不会差,杭州过万水平 3:没什么心眼,心底善良,人品不差
自己的观点:如果我作为一个旁观者的话,我也是劝分的。 其实一开始我是抱着试一试的态度相处,但是半年下来感觉她人很好,适合结婚,所以现在想要长久走下去。
]]>Azure Functions 为在 Azure 容器应用程序上开发、部署和管理容器化函数应用程序提供集成支持。有关详细信息,请访问此文档。
在最新版本中,我们提供了支持帮助您在 IntelliJ IDEA 中基于 Azure Container Apps 托管函数应用程序。您可以轻松创建在 Linux 容器中运行的函数应用程序。通过将功能将应用程序部署到 Azure Container Apps ,您就可以将功能应用程序集成到云原生微服务中,为您的应用程序提供灵活性和可扩展性。此外,在首次创建容器化功能应用程序时,还可以选择快速启动映像。点此查看演示。
服务视图( Services View )是 IntelliJ IDEA 中的一个工具窗口,便于在开发过程中集中管理各种服务。当 Java 开发人员在 Azure Explorer 中使用 Azure 容器注册中心 (ACR) 资源时,我们知道他们经常需要与服务视图交互,以便在 IntelliJ IDEA 中管理运行/调试配置、数据库会话和 Docker 连接。
在最新版本中,我们添加了支持,帮助开发人员直接从服务视图管理 Azure 容器注册表资源。基于现有的 Docker 插件,您可以在服务视图中将 Azure 容器注册表无缝添加为 Docker 注册表。此功能可让您轻松选择、查看和管理要与其他服务一起关注的容器映像。要开始使用,请导航到 “视图 > 工具窗口 > 服务”,然后单击 “添加服务 “继续。点此查看演示,了解如何操作。
如果您感兴趣,请不要犹豫并尝试使用我们的产品吧! 您的反馈和建议对我们非常重要,将有助于我们产品的未来发展。
在此博文上留下您的评论
以下链接和资源能帮助您更好地了解 Java on Azure Tooling 的相关信息:
Azure Toolkit for IntelliJ - IntelliJ IDEs Plugin | Marketplace The plugin allows Java developers to easily develop, configure, test, and deploy highly available and scalable Java applications to Azure. The plugin supports Azure... [3/20/23 1:27 PM] Mingjie Zhang (Shanghai Wicresoft Co,.Ltd.) Java on Azure Tooling 的更新 – 2023 年 2 月 Azure Container Apps 体验增强、Azure Monitor 支持
]]>前几天为了防噪音助眠开了概率论与数理统计,想弥补一下童年遗憾,想不到有个博主还讲得蛮好的,但是总会听睡过去导致只能听半段只好搁置了换一本,反复听心理学和博弈论都快教会我怎么 pua 恋爱和职场了
还是回到小说吧,为什么作者那么厉害,她写了好几本了,很多关于密室逃脱和真人选秀比赛的,估计写的时候不超过 25 岁,我的意思是知道那么多还可以用在小说里面
以前在初高竞赛班有个人也是成天睡觉考第一的,就感觉离天才的世界好遥远,他们到底在干什么,从小时候到长大怎么把东西积累下来的
]]>之前买了一个 4K144Hz 的显示器,用 safari 访问 ufo test 的话,显示刷新率是 72Hz ,而 Chrome 则显示 144Hz
我看这个数值刚好是 1/2 ,我还以为是 HIDPi 或者兼容性导致的数值读取错误
但日常使用总感觉不得劲,觉得卡卡的
上网一搜发现,还真是,safari 默认锁定了帧率
在设置——功能标志,搜索 60 ,会出来一个选项
Prefer Page Rendering Updates near 60fps
这个选项默认是勾选的,解除勾选后,你的 safari 就能满帧率运行啦
iPhone 和 iPad 上也有这个选项,但取消勾选后仍然是 60hz
]]>最近是用 Package Easy 机会比较多,也发现了较多的问题,有几个问题还是比较突出的。最明显的版本号原来用两位明显不够我的迭代频率,所以从当前版本开始版本号变成 3 位格式。所以 v1.0.3 上线啦~ 哈哈 谢谢大家。 更新内容
生成脚本名有空格时候编译有问题
注册格式可以作为可选组件出现
控制面板可以选择是否显示版本
可以添加文件夹
剥离基础设置程序名称格式注册
当拷贝后打开文件时保存需要重新选路径
修复卸载取消后进程依旧进行
多语言下 选择不同的文件 或者 dll eg:英文下可以选择英文配置文件 中文下可以选择中文配置文件
修复静默安装脚本,以及安装不正确
新增导出脚本,打开脚本
新增内部版本记录到文件,可以溯源
更新内容详情
修复原来脚本名有空格
比如程序名称为 Package Easy 时编译生成的脚本名称因为有空格原因,导致传参失败,无法编译。
注册组件可以作为可选组件出现&剥离基础设置名称注册
当勾选可选组件时,则注册格式将以独立组件的形式,添加到安装包中,如图
图片
否则则作为第一个组件内部默认注册
注册名称即为要关联的程序名,以及卸载面板关联的图标等等。这个地方原来默认取用应用程序名,但是有时候应用程序名跟实际要运行程序名称并不一致。
多语言下 选择不同的文件 或者 dll
解决了,在多语言下不同语言配置,比如支持中英文切换,安装时,根据选择语言类型来对不同配置 dll 使用。
例如
图片
在不同语言下选择了不同的配置文件。
注意:此处目标文件为所有组件选择的所有文件,如果此处进行了设置,则在原组件内的文件失效,优先使用本界面配置策略。
新增导出脚本,打开脚本
目前支持导出脚本,可以将脚本复制粘贴到 HM NIS Edit 中进行编辑。
文件=>导出脚本,可以选择转换成相对路径,这样就不依赖于工作路径,直接将脚本跟文件放入同一目录就好了。也可以选择快捷键 Ctrl+E.
此处目前仅支持复制并粘贴到,因为导出默认编码为 UTF-8 HM NIS Edit 默认不支持。
也可以选择文件=>导入脚本文件进行查看
图片
可以添加文件夹
现在可以添加空文件夹,作为默认创建和卸载部分,例如我要创建 XXX/Config 的文件夹,只需导入文件夹,并作为卸载删除项。 图片
注意:如果要设置多语言策略下不同文件策略,则这个地方必须预先导入目录
控制面板可以选择是否显示版本
图片
勾选此选项则控制面板默认安装名称为应用程序名+应用程序版本号
GitHub:https://github.com/tangmanger/PackageEasy Gitee:https://gitee.com/tangmanger/PackageEasy Release:https://github.com/tangmanger/PackageEasy/releases/tag/v1.0.3 谢谢大家,最近回头准备一个从头到尾的使用方法,敬请期待! 原文链接: https://mp.weixin.qq.com/s?__biz=MzA5ODY4MDkzOA==&mid=2447903959&idx=1&sn=7ecb538442d049d320706601ece30371&chksm=849145d2b3e6ccc4d256d83a95f6b350858affd0e5cb29c26a8066588b4d1f66c0fc91d1d7a9&token=279909266&lang=zh_CN#rd
]]>越狱据说 app 风险检测频率很高,不适合主力机?
]]>sa-token
的项目挺不错的,然后就找到官网,但是在进入开发文档的时候直接给我恶心住了,吃相太难看了。
我自己也是几个开源项目的作者,也深知开源不易,但是我的想法是做的好自然会有用户 star 和支持,而不是这样强行绑架用户,反正这样的项目我是直接拉黑不会考虑了。
]]>从我的邀请链接进入,你可以享受两美元的开卡优惠,我也能拿到一笔返佣,互利共赢啦。
开通后进去就能如下图所示的一张虚拟信用卡
可以用来订阅 GPT4.0 、github pro 、onlyfans 、midjourney 以及未来的 Sora 等等
平台目前支持的功能有:一键升级 GPT4.0 、一键注册 ChatGPT 账号、OpenAI API 转发等等
如果有关于 wildcard 的问题的话,可以看我的这篇文章:什么是 Wildcard
]]>联系:18901845760 (微信同号)
docker run -p 8080:80 -e ARANGO_ROOT_PASSWORD=test123 \
-e DEFAULT_QUERY_CONCURRENT=20 \
-e DEFAULT_DATA_CACHE_PATH=/var/lib/agiquery/cache \
-e ROOT_PASSWORD=agiquery.com \
-e DEFAULT_SESSION_TIMEOUT=3600 \
-v /tmp/query_cache:/var/lib/agiquery/cache \
-v /tmp/arangodb3:/var/lib/arangodb3 yeongher/agiquery:1.0.0
安装后,需要将 URL 邮件发我我,获取 License ,
对于 Agile Query 与其它 BI 产品的区别,总有人会说为啥重复造轮子,或者你的产品有啥竞争优势,这里我统一回复一下:
1. Agile Query 解决的是数据开发的痛点
传统 BI 都需要数据工程师通过图形界面或者写 SQL 做数据,通常一个报表或多种变形的报表做一份一数据,像帆软中的分析主题。(只因为分析的维度或指标不一样)
然而 Agile Query ,是根据选择的指标和维度动态构建查询 SQL ,然后在在数据库中执行,并进行后续可视化工作,传统 BI 开发一个报表可能需要几小时,几天时间,而 Agile Query 只需要几秒钟
2. Agile Query 不是我的原创想法
Agile Query 对标的是美国的 ThoughtSpot,它的核心专利就是 SQL 编译器,我们团队花了 2 年左右的时间完整实现了算法
]]>后续重大功能更新订阅,商量决定
]]>大家有没有遇到类似的情况,找东西时就在眼前,就是看不到。
]]>由于使用的 iframe 加载网页,一些网站启用了同源策略,导致无法正常使用
然后在商店买过一两个付费 app 中间在某些社区分享过 app 下载
后来因为一次需要验证密码解封账户限制时发现 苹果账户居然被绑了一个不是我的手机号 只能看到开头和结尾的数字
后来电话过苹果高级客服 表示无法解绑这手机 即便我拥有 gmail 控制权 客服提醒可能是手机登陆账户绑定上手机号的 无能为力
最近想起来又去试了下 苹果政策貌似还是没变 还是需要验证电话优先
]]>windows 系统,我的配合是,alist + PotPlayer + RaiDrive 。
家里有个黑苹果,对于 mac 系统了解不多,在这里请教下大佬们,mac 上有啥软件组合能达到 windows 这种体验的。
🥑 于是我想充分利用这颗激光雷达传感器。经过一周时间的开发,我制作出了一款名为 “激光测距仪” 的 App 。这款 App 利用激光照射到物体表面反射回来的时间来计算距离,测距非常准确!甚至比 iPhone 内置的测距仪 App 还要准!
已经在 App Store 上线了,可以在 App Store 上搜索 “激光测距仪” 下载,或者点击链接下载: https://apps.apple.com/app/id6466744678
支持的设备:
iPhone 12 Pro (Max)、iPhone 13 Pro (Max)、iPhone 14 Pro (Max)、iPhone 15 Pro (Max)、12.9 英寸 iPad Pro 第 4 、5 、6 代、11 英寸 iPad Pro 第 2 、3 、4 代
截图:
不知道大家用过 Manganum 没,每次打开新的 tab ,就能触及到各种常用的工具应用,包括 google caleder 、google keep 等, Deer sidebar 是跟 Manganum 类似的 chrome 扩展。
不过相比 Manganum ,Deer sidebar 的不同点在于:
扩展有 7 天试用期,试用期过后有些应用是需要付费的,当然有些应用还是继续免费,比如百度网盘和滴答清单。
收费的理由是
谢谢
]]>一个朋友让我帮他做一个软件,基本的功能需求就是帮美团商家处理店铺导入问题
比如我要开一个店,比如水果店,成人用品店。这样的店有一个特征就是店里面的大部分的商品都是标品(就是不怎么需要修改),其实正常来说只需要对标到其他的店铺直接 Copy 一份过来就行。如果从 0 开始去录入,对于大部分商家而言都非常的困难,可能有的人电脑都不太会。
然而就拿成人用品这个品类来说,大概会有 500 多个商品,还有各种各样的分类,如果人工操作的话确实非常麻烦,因为这样的品类完全没必要自己操作,毕竟产品不是自己生产的,大部分产品的东西都非常标准。
这样 需求就产生了
处理这个软件需求的初步方案分为下面几步
分析完大概方案基本上可以确定这是一个 electron 软件,纯 web 方案实现难度也比较高,需要和美团的爬虫团队对抗处理各种人机验证,环境监测,滑块。属实没必要。
基本方案就是 ,通过 electron 的 webview 获取到 cooike
在 electron 里面启动好 代理软件,比如 anyproxy, http-mimt-proxy, 这样的,并自动配置好 https 证书,以及电脑的代理端口。 在微信里面,大概电脑端的美团店铺的微信小程序,然后浏览商品,浏览过程中,通过 代理软件保存商品信息,等到后面进行上传。
避免后续商品冲突,在上传之前需要先删除掉所有的原店铺里面的所有商品分类,以及对应的商品信息。
然后上传商品
这个没什么好说基本思路就是 通过 webview 打开登录的页面,然后在页面里面 监听是否登录成功,登录成功之后获取页面里面的 cookie 并发送给 main process 进行保存。
具体的方案可以监测登录后的 localStorage 1s 检测一次,有就说明登录成功了。
因为成本问题,所以采用这种抓包的方式,如果直接通过调用接口的方式,需要逆向代码,成本太高。
这里我直接使用了 anyproxy,这个我比较熟悉这个,其他的也可以
async beforeSendResponse(req, res) {
if (req.url.indexOf("wx-shangou.xx.com") === -1) {
return null;
}
console.log(req.url);
if (req.url.indexOf("/mtweapp/v1/poi/sputag/products") !== -1) {
const r = JSON.parse(Buffer.from(res.response.body).toString());
const projectList = r.data.product_spu_list;
win?.webContents.send("product-list", projectList);
return null;
}
if (req.url.indexOf("/mtweapp/v1/poi/food") !== -1) {
const r = JSON.parse(Buffer.from(res.response.body).toString());
const tags = r.data.food_spu_tags;
win?.webContents.send("tags", tags);
return null;
}
return null;
}
具体的方案就是 监听对应接口的 response 请求,然后保存具体的值。
有几种方案,一种是通过 excel 的方式上传 可以将商品整理成美团官方规定的格式用 excel 的方式进行上传,不过根据我的实验,只有小部分标准商品可以,大部分的商品还是有问题的。
第二种方法就是直接通过后台的接口进行上传,这个在后台操作的时候可以看出来,对应的就是补起参数就可以了。但是也是比较麻烦
目前店铺登录,抓取竞品数据,清除店铺数据,包括上传,其实都 OK 了,就是上传数据不太完成,可能还需要仔细分析一下 包,核对一下数据才行。
因为前期测试的原因,所以我是保存了店铺的固定的 cookie 然后模拟登录的,实际上调试就可以使用这样的方式, 因为美团的后台的 cookie 其实很长时间都不会更新,真正在测试的时候,使用我上面注视掉的代码就可以。
因为我们需要进行中间人抓包,所以在你的电脑上需要安装好 HTTPS 证书,这个流程应该是可以自己完成的 但是我现在没做,嫌麻烦,大家自己用的时候也可以先自己手动安装证书,自己测试通之后再自己安装证书
在启动中间人抓包之后,还有一个需要为电脑设置全局代理
networksetup -setwebproxy Wi-Fi 127.0.0.1 8003;
networksetup -setsecurewebproxy Wi-Fi 127.0.0.1 8003;
MAC 下面的命令是这个样子的。
主要一个是没有太多相关的测试数据,朋友只提供了一个商家店铺,实际上它里面的类别还是挺多的,不太好测试, 再者就是里面的需要核对的数据太多了,再没有足够的测试数据的情况下,就比较麻烦了,调试起来就比较烦人,还有,也是最重要的原因,就是没有预算,再见。
]]>这时候就应该是满 120 呀
]]>