首页 文章 精选 留言 我的

精选列表

搜索[知识库增强],共10000篇文章
优秀的个人博客,低调大师

PicList V1.6.0 发布 云存储-图床管理和图片上传工具 相册功能增强 新增自动更新

PicList 是一个云存储管理和图片上传工具,可以进行包括云端目录查看、文件搜索、批量上传下载和删除文件,复制多种格式文件链接和文件预览等操作。 开源地址和软件官网 Github: https://github.com/Kuingsmile/PicList Gitee: https://gitee.com/kuingsmile/PicList 软件官网:https://piclist.cn 下载地址 Windows: https://release.piclist.cn/latest/PicList-Setup-1.6.0-ia32.exehttps://release.piclist.cn/latest/PicList-Setup-1.6.0-x64.exehttps://release.piclist.cn/latest/PicList-Setup-1.6.0.exe Linux: https://release.piclist.cn/latest/PicList-1.6.0.AppImagehttps://release.piclist.cn/latest/piclist_1.6.0_amd64.snap Mac: https://release.piclist.cn/latest/PicList-1.6.0-arm64.dmghttps://release.piclist.cn/latest/PicList-1.6.0-x64.dmg 本次更新内容 新功能 支持自动更新,软件在后台下载更新包,重启后自动更新。 相册支持按文件名、扩展名、上传时间和选中状态排序。 相册搜索支持正则表达式,可搜索文件名、URL 和上传时间。 相册支持批量修改 URL,支持正则匹配和占位符替换。 相册工具栏默认激活,可手动折叠。 可选择软件启动方式(静默启动、启动时显示主窗口、启动时显示悬浮窗)。 悬浮窗位置默认显示在右下角,并自动记住上次位置。 任务栏图标弹出菜单调整,新增打开 mini 窗口选项。 macOS 版本在 dock 栏显示,添加 AppMenu 和 dock 图标右键打开主窗口选项。 macOS 版本的软件图标修改为圆角正方形,与系统风格一致。 Bug 修复 修复了某些情况下剪贴板上传无法正常工作的问题。 特色功能 保留了PicGo的所有功能,兼容已有的PicGo插件系统,包括和typora、obsidian等的搭配 相册中可同步删除云端图片,同时新增了高级搜索和排序,批量修改URL等功能 内置水印添加、图片压缩、图片缩放、图片旋转和图片格式转换等功能,支持自定义配置,且可以通过CLI命令行调用 支持管理所有图床,可以在线进行云端目录查看、文件搜索、批量上传、批量下载、删除文件等 支持预览多种格式的文件,包括图片、视频、纯文本文件和markdown文件等 支持正则表达式的批量云端文件重命名 管理界面使用内置数据库缓存目录,加速目录加载速度 对于私有存储桶等支持复制预签名链接进行分享 优化了PicGo的界面,解锁了窗口大小限制,同时美化了部分界面布局 软件截图

优秀的个人博客,低调大师

ioGame 网络游戏服务器框架(Java)v17.1.13 新增 flow 上下文工厂、通讯增强

主要更新 (#I5N97K、#I5N97H) #I5N97K (可跨进程通信) 游戏逻辑服与同类型逻辑服通信,超时问题; 在之前的版本中,使用通讯方式--游戏逻辑服与同类型逻辑服通信时,当目标游戏逻辑服中的业务处理时间过长时,框架不能按开发者的预期值返回(相当于超时了),现在改为默认是在调用端进行阻塞,直到得到目标游戏逻辑服返回的结果为止; 新增 SyncRequestMessageClientProcessor、SyncRequestMessage 来处理超业务逻辑时间比较长的业务。 这个改进对开发者是无感知的; 使用的处理方式还是: CompletableFuture、ForkJoinPool 等,即总耗时为最长那个业务逻辑的耗时;如,A用时1秒、B用时2秒、C用时2.2秒,那么总耗时大概是2.2秒; 但如果超过在 BrokerGlobalConfig.timeoutMillis 中设置的时间,仍然会做报错的提示,防止开发者因为编写业务逻辑时引发的问题; #I5N97H 自定义 FlowContext 开发者可以自定义 FlowContext 方便做一些方法上的扩展,这些定制可以更好的服务于开发者的项目;业务框架新增 FlowContextFactory 业务框架 flow 上下文工厂,用于创建自定义的 FlowContext。通常使用自定义的 FlowContext,一般用于为 FlowContext 添加上一些方法; 框架默认提供的 FlowContext 已经将 invokeXXX 系列方法给标记为 Deprecated ,因为这是前期的一个 API 错误设计,invokeXXX 系列方法严格来说不算是 FlowContext 的职责;但在实际的业务开发中,开发者自定义的 FlowContext 是可以这么做的; 对于更详细的描述与具体使用,可以参考 https://www.yuque.com/iohao/game/zz8xiz#sLySn 在线文档 比如,现在我们自定义一个 FlowContext 为 MyFlowContext,直接可在业务方法中使用了 public class MyFlowContext extends FlowContext { public String hello() { // 在 MyFlowContext 中,扩展的方法 return "MyFlowContext hello"; } } @ActionController(1) public class SchoolAction { @ActionMethod(1) public LogicRequestPb here(LogicRequestPb logicRequestPb, MyFlowContext myFlowContext) { log.info("my flowContext : {}", myFlowContext.getClass()); myFlowContext.hello(); LogicRequestPb newLogicRequestPb = new LogicRequestPb(); newLogicRequestPb.name = logicRequestPb.name + ", I'm here "; return newLogicRequestPb; } } maven pom ioGame 已经上传到中央仓库 https://search.maven.org/search?q=a:bolt-run-one ioGame 是轻量级的网络游戏服务器框架,只需要在 pom 中引入如下就可以使用了,无需在安装任何其他的中间件产品了。 <dependency> <groupId>com.iohao.game</groupId> <artifactId>bolt-run-one</artifactId> <version>x.y.z</version> </dependency> ioGame网络游戏服务器框架简介 国内首个基于蚂蚁金服 SOFABolt 的 java 网络游戏服务器框架;无锁异步化、事件驱动的架构设计 通过 ioGame 可以很容易的搭建出一个集群无中心节点、有状态的分步式网络游戏服务器 无中间件依赖、代码即文档、JSR380、断言 + 异常机制 = 更少的维护与开发成本 轻量级、启动快、更节约、更简单、开箱即用、无配置文件、超高性能 近原生、业务框架平均每秒可以执行 1152 万次业务逻辑 神级特性:业务代码访问定位与跳转 对 webMVC 开发者友好 可跨进程通信 ioGame 是一个由java语言编写的网络游戏服务器框架。支持 websocket、tcp ,适用于全球同服、回合制游戏、策略游戏、即时战斗等游戏服务器的开发。具有高性能、稳定、易用易扩展、超好编程体验等特点。可做为 H5、手游、端游的 java 游戏服务器。 ioGame 是轻量级的网络游戏服务器框架,在使用 ioGame 时,无需安装其他服务,如: Nginx、Redis、MQ、Mysql、ZooKeeper、Protobuf 协议编译工具 ... ... 等。简单点说,就是无需安装其他产品就能使用;这意味着在使用上简单了,在部署上也为企业节约了成本。 通过 ioGame 你可以很容易的搭建出一个稳定、高性能、集群无中心节点、分步式、自带负载均衡、跨进程通信、避免类爆炸设计的网络游戏服务器。游戏框架借助于蚂蚁金服sofa-bolt通信框架来提供通信方面的稳定与高性能。 在 ioGame 中能让你遗忘 Netty,你几乎没有机会能直接的接触到 Netty 的复杂,但却能享受 Netty 带来的高性能。对开发者要求极低,为开发者节约开发时间。 即使之前没有游戏编程的经验,也能参与到游戏编程中。如果你之前具备一些游戏开发或者 webMVC 相关的知识,则会更容易上手游戏服务器的开发。 ioGame 可以很方便的与 spring 集成(5 行代码)。 在部署上,支持多服单进程的方式部署(类似单体应用、在分步式开发时,调试更加方便)、也支持多服多进程多机器的方式部署。在部署方式上可以随意切换,而不需要更改代码;日常中按照单体思维开发,在生产上可以使用多进程的方式部署;当然,也可以使用单进程的方式部署。 ioGame 框架职责清晰、业务开发几乎零学习成本、源码有高质量注释、示例多、使用文档多,开发体验最佳、对接文档自动生成、逻辑服之间可跨进程跨机器通信、业务代码定位 -- 神级特性、异常机制。 ioGame 是国内首个基于蚂蚁金服sofa-bolt的网络游戏框架,游戏框架由 [网络通信框架] 和 [业务框架] 组成。 网络通信框架:职责是各服务器之间的网络通信 业务框架:职责是业务逻辑的处理方式和编写方式 网络通信框架- SOFABolt SOFABolt是蚂蚁金融服务集团开发的一套基于 Netty 实现的网络通信框架。 为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上,而不是过多的纠结于网络底层 NIO 的实现以及处理难以调试的网络问题,Netty 应运而生。 为了让中间件开发者能将更多的精力放在产品功能特性实现上,而不是重复地一遍遍制造通信框架的轮子,SOFABolt 应运而生。 Bolt 名字取自迪士尼动画 - 闪电狗,是一个基于 Netty 最佳实践的轻量、易用、高性能、易扩展的通信框架。 业务框架 如果说sofa-bolt是为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上。而业务框架正是解决业务逻辑如何方便实现这一问题上。业务框架是游戏框架的一部份,职责是简化程序员的业务逻辑实现,业务框架使程序员能够快速的开始编写游戏业务。 业务框架对于每个 action (即业务的处理类) 都是通过asm与 Singleton、Flyweight 、Command 等设计模式结合,对 action 的获取上通过 array 来得到,是一种近原生的方式。 业务框架平均每秒可以执行 1152 万次业务逻辑。 架构简图 通过 ioGame 你可以很容易的搭建出一个集群、分步式的网络游戏服务器! 无锁异步化与事件驱动的架构设计、集群无中心节点、自带负载均衡、分布式支持、可动态增减机器、避免类爆炸的设计; 图中的每个对外服、每个游戏逻辑服、每个 broker (游戏网关)都可以在单独的进程中部署,逻辑服之间可以跨进程通信(对外服也是逻辑服的一种)。 游戏网关集群 broker (游戏网关)可以集群的方式部署,集群无中心节点、自带负载均衡。ioGame 本身就包含服务注册,你不需要外接一个服务注册中心,如 Eureka,ZooKeeper 等(变相的节约服务器成本)。 通过 broker (游戏网关) 的介入,之前非常复杂的负载均衡设计,如服务注册、健康度检查(后续版本提供)、到服务端的连接维护等这些问题,在 ioGame 中都不需要了,结构也简单了很多。实际上单台 broker (游戏网关) 性能已经能够满足了,因为游戏网关只做了转发。 逻辑服 逻辑服通常说的是游戏对外服和游戏逻辑服。逻辑服可以有很多个,逻辑服扩展数量的理论上限是 netty 的连接上限。 游戏对外服 对外服保持与用户(玩家)的长连接。先来个假设,假如我们的一台硬件支持我们建立用户连接的上限是 5000 人,当用户量达到 7000 人时,我们可以多加一个对外服务器来进行分流减压。由于游戏对外服扩展的简单性,意味着支持同时在线玩家可以轻松的达到百万、千万甚至更多。 在结构组合上(部署多样性) 框架的架构由三部分组成:1.游戏对外服、2.Broker(游戏网关)、3.游戏逻辑服;三者既是相互独立的,又是可以相互融合的;如: 游戏对外服、Broker(游戏网关)、游戏逻辑服这三部分,在一个进程中; 游戏对外服、Broker(游戏网关)、游戏逻辑服这三部分,在多个进程中; 游戏对外服、Broker(游戏网关)这两部分在一个进程中;而游戏逻辑服在多个进程中;(类似之前游戏的传统架构) Broker(游戏网关)在一个进程中;游戏对外服、游戏逻辑服这两部分在多个进程中 甚至可以不需要游戏对外服,只使用Broker(游戏网关)和游戏逻辑服这两部分,其他系统业务; 因为 ioGame 遵循面向对象的设计原则(单一职责原则、开闭原则、里式替换原则、依赖倒置原则、接口隔离原则、迪米特法则)等,所以使得架构的职责分明,可以灵活的进行组合; 架构比较清晰的就是,游戏对外服负责维护客户端的接入(用户、玩家的连接),游戏逻辑服专心负责业务逻辑,他们之间的调度由 Broker(游戏网关)来负责;因为架构拆分的合理,所以特别方便用 k8s 来自由伸缩部署这三种服,哪个服水位高就扩容哪个,水位过去了又可以缩容。 通过 ioGame 可以使得游戏编程变得简单,下面是一个业务示例 Proto协议文件定义 首先我们自定义一个协议文件,这个协议文件作为我们的业务载体描述。这个协议是纯 java 代码编写的,使用的是 jprotobuf,jprotobuf 是对google protobuf的简化使用,性能同等。 可以把这理解成 DTO、POJO、业务数据载体等,其主要目的是用于业务数据的传输; /** 请求 */ @ProtobufClass @FieldDefaults(level = AccessLevel.PUBLIC) public class HelloReq { String name; } Action 游戏服务器的编程,游戏服务器接收业务数据后,对业务数据进行处理 @ActionController(1) public class DemoAction { @ActionMethod(0) public HelloReq here(HelloReq helloReq) { HelloReq newHelloReq = new HelloReq(); newHelloReq.name = helloReq.name + ", I'm here "; return newHelloReq; } } 一个方法在业务框架中表示一个Action(即一个业务动作)。 方法声名的参数是用于接收前端传入的业务数据,在方法 return 时,数据就可以被游戏前端接收到。程序员可以不需要关心业务框架的内部细节。 从上面的示例可以看出,这和普通的 java 类并无区别,同时这种设计方式避免了类爆炸。如果只负责编写游戏业务,那么对于业务框架的学习可以到此为止了。 游戏编程就是如此简单! 问:我可以开始游戏服务器的编程了吗? 是的,你已经可以开始游戏服务器的编程了。 访问示例(控制台) 当我们访问here方法时(通常由游戏前端来请求),控制台将会打印 ┏━━━━━ Debug. [(DemoAction.java:4).here] ━━━ [cmd:1 - subCmd:0 - cmdMerge:65536] ┣ userId : 888 ┣ 参数: helloReq : HelloReq(name=塔姆) ┣ 响应: HelloReq(name=塔姆, I'm here ) ┣ 时间: 0 ms (业务方法总耗时) ┗━━━━━ Debug [DemoAction.java] ━━━ 有了以上信息,游戏开发者可以很快的定位问题。如果没有可视化的信息,开发中会浪费很多时间在前后端的沟通上。问题包括: 是否传参问题 (游戏前端说传了) 是否响应问题(游戏后端说返回了) 业务执行时长问题 (游戏前端说没收到响应, 游戏后端说早就响应了) 其中代码导航可以让开发者快速的跳转到业务类对应代码中,在多人合作的项目中,可以快速的知道业务经过了哪些方法的执行,使得我们可以快速的进行阅读或修改; 适合人群? 长期从事 web 内部系统开发人员, 想了解游戏的 刚从事游戏开发的 未从事过游戏开发,但却对其感兴趣的 对设计模式在实践中的应用和 sofa-bolt 有兴趣的学习者 可以接受新鲜事物的 想放弃祖传代码的 推荐实际编程经验一年以上的人员 ioGame提供了丰富的在线高质量使用文档,为你的团队助力,带上你们的小伙伴一起,这样就不用手把手的教了。

优秀的个人博客,低调大师

芋道 ruoyi-vue-pro v1.5.1 发布:优化多租户功能,新增租户套餐,增强多租户封装

项目地址 https://gitee.com/zhijiantianya/ruoyi-vue-pro 严肃声明:现在、未来都不会有商业版本,所有功能全部开源! 拒绝虚假开源,售卖商业版,程序员不骗程序员!! 「我喜欢写代码,乐此不疲」 「我喜欢做开源,以此为乐」 🐯项目介绍 芋道,一套全部开源的企业级的快速开发平台,毫无保留给个人及企业免费使用。 有任何问题,或者想要的功能,可以在Issues中提给艿艿。 前端采用vue-element-admin,正在支持 Vue 3 + ElementUI Plus 最新方案。 后端采用 Spring Boot、MySQL + MyBatis Plus、Redis + Redisson。 权限认证使用 Spring Security & Token & Redis,支持多终端、多种用户的认证系统。 支持加载动态权限菜单,按钮级别权限控制,本地缓存提升性能。 支持 SaaS 多租户系统,可自定义每个租户的权限,提供透明化的多租户底层封装。 工作流使用 Activiti ,支持动态表单、在线设计流程、多种任务分配方式。 高效率开发,使用代码生成器可以一键生成前后端代码 + 单元测试 + Swagger 接口文档 + Validator 参数校验。 集成微信小程序、微信公众号、企业微信、钉钉等三方登陆,集成支付宝、微信等支付与退款。 集成阿里云、腾讯云、云片等短信渠道,集成阿里云、腾讯云、七牛云等云存储服务。 🐶在线体验 演示地址:http://dashboard.yudao.iocoder.cn 账号密码:admin/admin123 更新说明 ⚠️ Warning 暂无,主要优化多租户功能: 创建租户时,自动创建用户、角色等信息 支持租户套餐,自定义每个租户的菜单、操作、按钮等权限信息 📈 Statistic 总代码行数:71249 源码代码行数:43921 注释行数:16341 单元测试用例数:341 ⭐ New Features 【新增】后端yudao.tenant.enable配置项,前端VUE_APP_TENANT_ENABLE配置项,用于开关租户功能。commit 【优化】调整默认所有表开启多租户的特性,可通过yudao.tenant.ignore-tables配置项进行忽略,替代原本默认不开启的策略commit 【新增】通过yudao.tenant.ignore-urls配置忽略多租户的请求,例如说 ,例如说短信回调、支付回调等 Open APIcommit 【新增】新增@TenantIgnore注解,标记指定方法,忽略多租户的自动过滤,适合实现跨租户的逻辑commit 【新增】租户套餐的管理,可配置每个租户的可使用的功能权限commit 【优化】新建租户时,自动创建对应的管理员账号、角色等基础信息commit 【优化】Redis 最低版本 5.0.0 检测,解决搭建环境过程中无法理解 XREADGROUP 指令的报错commit 🐞 Bug Fixes 【修复】修复不支持根部门的问题commit 【修复】错误码存在重复的问题commit 【修复】角色的数据范围为仅本人时,登陆后获取权限列表报错的问题commit 🔨 Dependency Upgrades 【升级】spring-boot from 2.5.9 to 2.5.10 【升级】mybatis-plus from 3.4.3.4 to 3.5.1 未来计划 v1.6.0 计划: 基于 flowable 实现工作流(今天合并到 master 分支) v1.6.1 计划: 功能优化:https://gitee.com/zhijiantianya/ruoyi-vue-pro/issues/I4VFYB

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册