首页 文章 精选 留言 我的

精选列表

搜索[跨模态推理],共10000篇文章
优秀的个人博客,低调大师

NativeScript 8.9.0 发布,跨平台原生应用框架

NativeScript 8.9.0现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 功能 core:CSS wide keywords(#10709) Node-API 引擎支持(#10710) ios:为页面添加了 layoutChanged 事件支持(#10707) image:按字体大小和字体粗细设置 iOS 系统图标样式(#10706) css:允许 css 计算表达式中使用无穷大值(#10705) config:能够从任何路径包含 native source code(#10698) action-bar:iosLargeTitle 和 iosShadow 属性(#10694) ios:添加活动指示器 iosIndicatorViewStyle 属性(#10650) ios:苹果智能写作工具(#10643) config:Swift 包的多目标支持(#10695) core:Tailwind v4 支持(#10692) core:样式属性模块改进和组织(#10685) core:灵活使用多个 RootLayouts(#10684) core:文本库跨度交互和样式改进(#10682) apple view filtering(#10681) winter-tc(#10667) core:openUrlAsync实用程序(#10637) core:支持 simultaneous pseudo states(#10656) ios:操作栏的背景图像支持(#10645) 修复 ios:将文本颜色应用于 HTMLView 内容(#10708) android:格式化字符串NoSuchMethodError(#10704) core:修正标签和嵌套跨度之间的背景颜色(#10701) core:添加了对文本 CSS 属性缺失的继承支持(#10699) core:修正框架导航事件类型(#10697) android:在search bar focus 上显示 soft input(#10696) core:如果 < 0,则忽略inserting child(#10690) core:添加缺失的长度属性相等比较器(#10689) core:安全检查以防止潜在的导航异常(#10683) core:避免使用负起始索引拼接数组(#10679) core:伪类处理程序无法取消订阅监听器(#10680) 修正了对 span 的 font-weight 支持(045986de8) android:Span 应该接受所有字体粗细类型(a21d4f94a) ios:修正旋转动画(#10676) ios:如果在任何布局之前设置,则转换无效(#10675) ios:iOS 10 及更早版本上的安全区域内存泄漏(#10673) crypto:getRandomValues 返回值(#10658) core:改进常用实用程序的类型(#10628) core:提供的图像源可能会被无意中处置(#10654) android:背景图像宽高比(#10651) 性能 避免为系统字体创建新的字体实例(4902e2781) 更多详情可查看:https://github.com/NativeScript/NativeScript/releases/tag/8.9.0-core

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

NativeScript 8.8.3 发布,跨平台原生应用框架

NativeScript 8.8.3现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 Bug Fixes android:使用 addEventListener 时布局更改监听器会被忽略(#10597)(89fa6ec) android:RootLayout 阴影覆盖空颜色处理 (#10599) (f7b9d06) color:四位十六进制颜色解析失败(#10593)(8877bec) core:在 android 平台中包含除 core.aar 之外的所有内容(#10592)(423a2d2) ios:popover delegate 应该忽略 non-native views(#10609)(ba3316e) ios:正确清理重复使用的列表视图单元格内容(#10603)(dca7718) ios:正确绘制彩色边框的边界(#10600)(75c8e94) ios:替换已弃用的 UIApplication.shared.openUrl 方法调用 (#10627) (1cee35d) layout:防止出现负的宽度/高度值(#10616)(0506012) Features core:为对话框嵌套元素样式添加了 css 类(#10605)(6104b5b) Performance Improvements core:避免为 view properties 设置相同的值(#10602)(499fe8d) 更新说明:https://github.com/NativeScript/NativeScript/releases/tag/8.8.3-core

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

跨平台游戏引擎 Axmol-2.1.5 发布

2.1.5 版本是一个针对 bug 修复和改进的长期支持 (LTS) 版本。此版本比 2.1.4 快 6.1%,比 Cocos2d-x v4.0 快 39.25%。这对游戏引擎来说是一个很大的改进,即使你来自较老版本的 Axmol 感谢所有 Axmol 贡献者,包括金融赞助者 @thienphuoc, @bingsoo 成为 axmol 社区的月度赞助者 @asnagni opencollective 持续赞助 axmol 社区 相对于 2.1.4 的重大变化: 添加视频纹理格式 I420 渲染支持 @halx99, 同时修复了某些低版本 Android 设备视频渲染异常问题,由 @SimplyJpk 报告 重构 math 库 SIMD,由 @halx99, @huiguochen, @smilediver 共同提议 @smilediver 使用 NEON SIMD 重新实现了 transformVertices & transformIndices 操作, 在 iPhone 11 设备上性能提升了 7-8% @halx99, @huiguochen 实现了 transformVertices & transformIndices 的 SSE SIMD 版本, 在 Windows 设备上性能提升了 6% 添加了 cmake 选项:AX_WASM_ISA_SIMD 以便支持构建 Wasm 时启用 SIMD 优化,目前支持: sse 和 neon 使用 NEON intrinsics 指令重写 ARM 平台下的 SIMD 数学优化,替代了原来的内联汇编, 以便支持构建目标平台: WASM 和 WINUWP 时启用 SIMD 优化 @halx99 增强了 FileUtils 一些 API 重命名 FileUtils::createDirectory 为 FileUtils::createDirectories 使用 splitpath_cb 优化 FileUtils::createDirectories,避免产生临路径列表 重命名 FileUtils::getFileShortName 为 FileUtils::getPathBaseName 重命名 FileUtils::getFileExtension 为 FileUtils::getPathExtension 添加了API: FileUtils::getPathDirName 添加了API: FileUtils::getPathBaseNameNoExtension Bug修复 @halx99 修复了 checkReallySupportsASTC 不支持 iOS 设备问题,由 @BIGCATDOG 在 #2078 中反馈 @rh101 修复了 ImGui index draw 信息错误问题 @rh101, 详见:#2052 @halx99 修复了 ArchLinux 执行 setup.ps1 是失败问题 @halx99 修复了 android VolatileTexture 内存泄漏问题 @IamSanjid 修复了 cmake 链接预编译库错误问题,详见:#2058 @halx99 修复了 winuwp 拷贝 openssl 库失败问题 修复了 HttpClient 线程安全导致 crash 问题 @halx99,详见 #2064, 由 @qq461787436 反馈 修复了 curl 下载任务上限不起作用问题 @smilediver, 详见 #2067 修复了从 2.1.4 版本引发的 live2d 编译错误问题 @halx99, 由 @Sevael 反馈 使用协程控制 AutoTest 流程,解决了 macOS 启动 AutoTest 立即 crash 问题,详见 #1751 SDK更新 cppwinrt: 2.0.240111.5 ==> 2.0.240405.15 三方库更新 box2d: 2.4.1 ==> 2.4.2 curl: 8.8.0 ==> 8.9.1 simdjson: 3.9.5 ==> 3.10.0 lz4: 1.9.4 ==> 1.10.0 c-ares: 1.32.2 ==> 1.33.0 下载 Github: axmol-2.1.5.zip 百度网盘: axmol-2.1.5.zip axmol-2.1.5.zip MD5: D42B00A4FBFEF44E8AB38A56C2028A5E 完整更新内容 请访问: https://github.com/axmolengine/axmol/releases/tag/v2.1.5

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

跨平台游戏引擎 Axmol-2.1.4 发布

2.1.4 版本是用于错误修复和改进的次要 LTS 版本,感谢 axmol 的所有贡献者 相对于 2.1.3 的重大变化: 添加 JobSystem 支持 添加 cmake 选项 AX_WASM_INITIAL_MEMORY 添加 Linux WebView 实现 改进 curl 下载实现 使用curl_multi_poll代替选择 使用curl_xferinfo_callback代替已弃用的curl_progress_callback 不要使用CURL_HEADER来获取内容长度,而是要获取xferinfo_callback 改进 RenderTarget 使苹果控制器支持四个玩家 已弃用 AsyncTaskPool,请改用JobSystem。 AXLOG, AXLOGINFO, AXLOGWARN, AXLOGERROR, 请改用 AXLOGD, AXLOGI, AXLOGE。 弃用 AXLOG、AXLOGINFO、AXLOGWARN、AXLOGERROR 所有 AXLOG/printf 重命名为 AXLOGD(不带 .core、.3rdparty) 将多个日志消息设置为详细级别 将 AXLOGI 更改为更合适的 AXLOGD 用于多个日志调用 StringUtils::format,请改用 fmt::format。 Bug修复 修复了对错误 java 方法的调用 修复回调参数渲染器图像类型 修复 char8_t 无法禁用 msvc 的问题 修复重新创建的渲染器 修复了播放某些 HLS 视频文件时 AvfMediaEngine 资产的问题 修复了在 linux ubuntu2204 上编译错误的问题 修复预构建,添加ax_link_ext宏 改进 添加了更改 Inspector 字体大小的功能 计算具有圆角的 Android 设备的安全区域插入值 针对 iOS 模拟器时更新了 axmol 构建命令的文档 为 ImGuiPresenter 添加了字形范围管理器,添加了使用检查器字体的字形范围的功能 添加了对发送必要事件的支持,无论事件调度器启用的状态如何,都可以发送 默认启用 DrawNodeEx 将子模具正确应用于剪裁节点 修复了 Windows 上的一些编译器警告 中执行两个运行动作时,计算运行动作完成以调用最终完成 仅当活动移至后台时才暂停 GLSurfaceView,而如果它只是因@rh101而失去焦点,则不会暂停 更新 llvm 设置 从 gh action yml 配置中删除 llvm 设置,因为 1kiss 会设置它 将 1kiss.ps1 llvm 最低要求更新为 17.0.6,以获得 msvc14.40 支持 从 1k/manifest.ps1 中删除 llvm 版本配置,因为 1kiss.ps1 已正确设置为 msvc14.40 支持 当自定义 ILogOutput 由 @halx99 设置时不输出日志 确保 RenderTexture 引用在线程化的 saveToFile 任务完成时有效 SDK 和工具更新 gradle: 8.7 ==> 8.8 AGP: 8.2.2 ==> 8.4.0 emsdk: 3.1.59 ==> 3.1.63 第三方更新 openssl: 3.0.13 ==> 3.3.1 Clipper2: 1.3.0 ==> 1.4.0 simdjson: 3.9.2 ==> 3.9.5 fmtlib: 10.2.1 ==> 11.0.1 yasio: 4.2.2 ==> 4.2.3 oboe: 1.8.1 ==> 1.9.0 plainlua: 5.4.6 ==> 5.4.7 c-ares: 1.29.0 ==> 1.32.2 luajit: 2.1-d06beb0 ==> 2.1-04dca79 下载 Github: https://github.com/axmolengine/axmol/releases/download/v2.1.4/axmol-2.1.4.zip 百度网盘:https://pan.baidu.com/s/1RLqnqSs8GqLLj4Aaput0ag?pwd=n3ya QQ群文件:https://gitee.com/link?target=https%3A%2F%2Fjq.qq.com%2F%3F_wv%3D1027%26k%3DnvNmzOIY axmol-2.1.4.zip MD5: 849AA31DD6235945A88B7C60360EBB1A 更完整更新内容请访问 https://github.com/axmolengine/axmol/releases/tag/v2.1.4

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

NativeScript 8.7.0 发布,跨平台原生应用框架

NativeScript 8.7.0现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 Bug Fixes ndroid:在 Android > 29 上的 writeText 上崩溃(#10466)(02e2801) android:getInputStream around "content://" paths(#10469) (41759c1) android:使用“content://”uris 时防止文件系统操作出现错误(#10461)(c15820b) android:sustain native error stack(#10467)(b226066) color:setAlpha 和其他方法返回正确的 Color 类 (#10441) (4f12fee) core:配置文件装饰器 (#10476) (135d37b) 检查器模块 (ae62725) ios:plain js/ts apps 的实时同步处理 (#10500) (7370912) ios:在更新 origin point 之前取消设置缓存帧(#10499)(3a486e5) Features android:elements & network requests的开发工具(#10506)(5324e50) android:扩展布局构造函数,以便可以在 android 布局中实例化(#10444)(ca886b9) ios:允许在框架上自定义导航栏和工具栏(#10495)(d67d297) ios:允许禁用文本动画(#10505)(9ca4902) SegmentedBar:添加了 selectedTextColor 和 selectedBackgroundColor 改进 (#10474) (3a0afdb) types-ios:为 stringFromCString 添加互操作类型(#10494)(0c8c945) Visionos:ui-mobile-base 支持 xros 以及窗口处理的改进 (#10478) (01d537b) wepback:自定义buildPath支持 (#10477) (4293284) 性能改进 禁用布局视图的辅助功能 (#10482) (3bd6d9b) 更新说明:https://github.com/NativeScript/NativeScript/releases/tag/8.7.0-core

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

跨平台游戏引擎 Axmol-2.1.0 发布

时光流转,转眼间 2024 年了,自上个版本发布已经过去 4 个月,axmol-2.1.0 终于在 2024/1/20 正式发布了,此版本是一个主要的 LTS 维护发行版本,在此先感谢所有参与 axmol 的贡献者,特别感谢以下几位(名称为 Github 账户名): @rh101 @DeliWorks @aismann 在 axmol github 社区相当活跃 @iAndyHD3 创建了 axmol discord 论坛并维护 @danialias 创建和维护 axmol 的 wiki 页面以及 axmol.org 主页 2.1.0 相对于 2.0.0 的主要更新如下 大幅缩减了仓库大小,由原来的 1.1GB+ 缩减至约:80MB cmake 配置阶段同时添加了 gitee 镜像支持,在相对于引擎目录创建空文件 1k/.gitee 即可 Windows UWP平台由 C++/CX 迁移至 cppwinrt,自此 axmol 支持的所有平台 C++ 标准得以统一为 20 增强 TTF 文本渲染,支持开启全局 SDF 渲染和渲染预烘焙 SDF 纹理 添加扩展 SDFGen 用于生成预烘焙 SDF 字体纹理 增加 API:FontAtlasCache::preloadFontAtlas用于于加载预烘焙的 SDF Font 纹理 增加 API:Device::getPixelRatio 获取设备 DPI 缩放值 ImGui Android 平台增加 DPI 支持 增加 Windows UWP 平台 FPS 控制支持,以便在高刷屏幕上能够合理地限制帧率 整合 backend::Device 和 backend::DeviceInfo 到 backend::DriverBase 以避免和主命名空间下的 Device 重名 添加扩展:JSONDefault 添加 WICImageLoader 虚拟文件系统支持 添加 RichText 垂直对齐支持 添加扩展:Inspector 以便探查场景对象 为 Native 和 WebGL 平台添加实验性的 WebSocket 支持 添加 fairygui Lua 绑定支持 为 PC 平台启用矩阵运算 SSE 加速指令支持 添加 UserDefault 多文件配置支持 添加 ActionCoroutine 类似 unity 引擎的协程支持 添加 .net 风格的 JsonWriter 类支持 更新 Android API 至: 34 更新 AGP 插件至: 8.2.1 Android Studio 要求版本提升至: 2023.1.1+ BugFixes 修复 glslcc 翻译后的 Metal Shader 中的纹理绑定次序和 GLSL 源码中不一致问题 修复 GLES3 Shader 中标量数组布局错误问题 修复 Lua 扩展在 Windows 平台的构建错误问题 修复 ImGui 扩展一些稳定性问题 修复 wasm 错误的 ALPHA 预乘造成系统字体渲染模糊问题 修复文本渲染中未正确处理内容缩放导致布局错误问题 修复 wasm 随机工具类始终返回 0 问题 修复 ShaderCache 内存泄漏问题 修复重建 ImGui context crash 问题 修复 AudioPlayer::setTime 针对双通道音频设置播放时间错误问题 修复 label SDF渲染时描边效果在 Metal 不起作用问题。 功能增强 使用 std::unordered_map 替代了 uthash 所有平台 cmake 版本要求提升至 3.28.1+ 增强 install-pwsh 脚本和 axmol 命令行构建脚本 修复了 AGP8 构建警告,变更了 APK 签名 Gradle 配置: RELEASE_STORE_FILE ==> KEY_STORE_FILE RELEASE_KEY_STORE_PASSWORD ==> KEY_STORE_PASSWORD RELEASE_KEY_ALIAS ==> KEY_ALIAS RELEASE_KEY_PASSWORD ==> KEY_PASSWORD 兼容性修改 重命名了 OpenGLView ==> GLView 三方库更新 astcenc: 4.5.0 ==> 4.7.0 c-ares: 1.19.1 ==> 1.25.0 clipper2: 1.2.2 ==> 1.3.0 curl: 8.2.1 ==> 8.5.0 jpeg-turbo: 3.0.0 ==> 3.0.1 llhttp: 9.0.1 ==> 9.1.3 ntcvt: 1.0.0 ==> 1.0.1 oboe: 1.7.0 ==> 1.8.0 openssl: 3.0.10 ==> 3.0.12 rapidjson: 1.0.0 ==> 1.0.0-b4a6da3 simdjson(NEW): 3.6.3 webp: 1.3.1 ==> 1.3.2 yasio: 4.1.0 ==> 4.1.4 fmt: 10.1.1 ==> 10.2.1 imgui: 1.89.8 ==> 1.90.1 gitee镜像地址可用 https://gitee.com/simdsoft/axmol.git 更多完整改动请访问 https://github.com/axmolengine/axmol/releases/tag/v2.1.0

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

NativeScript 8.6.2 发布,跨平台原生应用框架

NativeScript 8.6.2现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 Bug Fixes android:以编程方式正确更改输入交互模式(#10434)(07d2129) android:在 TextField 中使用 nativeTextViewProtected (#10450) (c5561d6) core:可继承属性更改 backstack 传播 (#10438) (48b1856) core:安全重要检查 (#10455) (172d346) css:box-shadow 无处理 (#10445) (6744009) ios:字体变化设置不适用于标签(#10429)(2cf166d) ios:边界角度不统一(#10437)(aba3093) ios:带有监听器的 ScrollView 已删除 scroll delegate(#10432)(9fae9c4) ios:shadow 不考虑 z-index (#10433) (5a4bb7c) time-picker:使用 valueChanged 正确处理小时和分钟上的 0 (#10460) (4762699) Features core:initRootView 事件 (#10442) (82e9c67) core:新的defaultVisualState 属性选项可覆盖"normal"默认 visualState(#10440)(31ed40c) 更新说明:https://github.com/NativeScript/NativeScript/releases/tag/8.6.2-core

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

TGFX —— 跨平台 2D 绘图引擎

TGFX (Tencent Graphics)是一个轻量级 2D 图形库,设计用于渲染文本、几何图形和图像。它提供高性能的 API,可在各种 GPU 硬件和软件平台上运行,包括 iOS、Android、macOS、Windows、Linux、Web 等。 TGFX 最初是作为 PAG 项目的核心组件创建的,从 4.0 版开始成为 libpag 库的默认图形引擎。它的主要目标是在保持更小二进制文件大小的同时,为 Skia 图形库提供令人信服的替代方案。随着时间的推移,它已被许多其他产品采用,如 Hippy、腾讯文档和各种视频编辑应用程序。 包体优化 TGFX 最终以 400K 左右的大小覆盖了 Skia 近 2M 包体的绝大部分功能。核心优化策略主要有两点: 调度优化 TGFX 并不只是做 Skia 的简化,还把一些在业务上调用起来非常复杂的通用性流程进行了抽象封装: 在性能和架构方面,还做了这些额外的优化: 默认开启了 HardwareBuffer 的支持,来全面加速纹理的提交,包括 Android 端。 暴露了引擎内部 Path 对应的 GPU 高速缓存,避免矢量绘制充分进行三角剖分操作。 GPU 对象支持在任意线程释放,等关联的上下文激活时才清理,避免随机 Crash 问题。 约束图片解码完会尽可能只缓存 GPU 的纹理部分,理论上全局可以降低一半的内存占用。 将绝大部分缓存都交给了上层业务精确管理,避免随机绘制的缓存持续占用额外的内存。 在全平台都实现了默认字体的读取能力,包括浏览器,避免下载上百兆 CJK 字体的压力。 增加了对各种硬解视频帧格式的直接绘制能力,可以一次性上屏无需通过 CPU 转换格式。 放弃了 SKSL 的统一 Shader 语言设计,更加符合原生接口调用习惯,既节省了包体,也减少了 GPU Program 的编译耗时。

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

NativeScript 8.6.1 发布,跨平台原生应用框架

NativeScript 8.6.1现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 Bug Fixes android:防止被破坏的对话框 rehydration(#10414)(7563549) core:box-shadow“none”处理(#10405)(c23695c) core:字体变化设置解析器无效轴 (#10427) (0847855) core:页面框架引用未在本机视图处理中取消设置(#10417)(22c21b7) css:防止“unset”和“inset”上的速记解析错误(#10424)(d70b48b) ios:添加/删除可重用视图的阴影(#10409)(ee87b52) ios:视图处理期间“undefined”的属性掩码(#10404)(212d086) ios:平移变换后的阴影位置(#10413)(c78ea79) Features android:允许 shared element转换与 ListView/CollectionView/Pager 一起使用(#10411)(e8c093d) 更新说明:https://github.com/NativeScript/NativeScript/releases/tag/8.6.1-core

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

Kubernetes跨StorageClass迁移,切换Rainbond默认SC

基于主机安装或基于Kubernetes安装的 Rainbond 集群(均使用默认参数安装),默认使用的共享文件存储是 NFS ,以 Pod 方式运行在 Kubernetes 中,但这种方式也有一些无法避免的问题,比如:NFS 的 SVC 无法通信时集群无法挂载存储则导致不能使用、服务器关机时卡在 umount 导致不能正常关机等等。 当然还有切换共享文件存储的需求,在第一次安装 Rainbond 时,大多数都使用的默认安装,使用一段时间后想切换到外部的 NFS,或者云上的 NAS等等。 在原生的 Kubernetes 集群中,通过 StorageClass 创建的 PVC 是无法修改存储后端的,需要将 PV、PVC 删除后通过新的 StorageClass 创建新的 PVC,然后再将数据迁移,再重新挂载 PVC。当有很多个 PVC 时,需要多次重复的操作。 而 Rainbond 虽然也是通过 StorageClass 创建的 PVC,但相比原生 Kubernetes 省去了创建 PV、PVC 和重新挂载的步骤,以及重复性的操作。在 Rainbond 中只需要将底层存储类更换,然后迁移 Rainbond 所创建的一整个目录,最后重新在页面中修改挂载即可完成迁移。 本文将讲述如何迁移 Rainbond 默认的 NFS 存储到外部 NFS 存储,大致分为以下几个步骤: 部署外部 NFS 存储并对接到 K8s 上。 备份 NFS 存储的数据。 恢复备份数据并切换 Rainbond 默认存储至外部存储。 注意: 关闭正在运行的应用,避免增量数据导致数据不一致。 组件挂载的存储必须是共享存储,其他存储则需要单独迁移。 部署 NFS 并对接到 K8s 上 外部 NFS 存储可以选择部署 NFS 双机热备或其他方案,这里就不演示了,以单节点 NFS 为例。 在 Centos 上部署 NFS 安装 nfs-utils yum install -y nfs-utils 创建共享目录 mkdir -p /data 编辑 /etc/exports 文件,添加如下内容: $ vim /etc/exports /data *(rw,sync,insecure,no_subtree_check,no_root_squash) 配置完成后,执行以下命令启动 NFS 服务: systemctl enable nfs-server systemctl start nfs-server 验证 NFS 是否可用 showmount -e 172.20.251.94 在 K8s 中部署 NFS Client 下面将外部的 NFS 存储对接到 Kubernetes 上,在 Kubernetes 中部署 NFS Client Provisioner 安装 Helm 命令 添加 Helm Chart 仓库 helm repo add rainbond https://openchart.goodrain.com/goodrain/rainbond 安装 NFS-Client-Provisioner helm install nfs-client-provisioner rainbond/nfs-client-provisioner \ --set nfs.server=172.20.251.94 \ --set nfs.path=/data \ --version 1.2.8 验证 NFS Client 是否可用,创建 PVC 验证。 $ vim test-pvc.yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: name: test-claim spec: accessModes: - ReadWriteOnce volumeMode: Filesystem resources: requests: storage: 1Gi storageClassName: nfs-client $ kubectl apply -f test-pvc.yaml 查询 PVC 状态为 Bound 则正常。 备份默认 NFS 的数据 查看 rbd-system 下所有的 PVC。 kubectl get pvc -n rbd-system PVC名称 解释 data 测试存储是否正常默认创建的PVC(无用) data-nfs-provisioner-0 NFS Pod所使用的PVC,默认路径在宿主机的/opt/rainbond/data/nfs下。 data-rbd-monitor-0 存储监控数据。(可不要) rbd-api 存储 api request 请求日志。(可不要) rbd-chaos-cache 存储构建组件的缓存(可不要) rbd-cpt-grdata 存储平台上所有组件挂载共享存储数据,以及组件的日志。(必须) rbd-db-rbd-db-0 存储 MySQL 数据,默认是存在本地的,没存储在 NFS 中。 rbd-etcd-rbd-etcd-0 存储 Etcd 数据,默认是存在本地的,没存储在 NFS 中。 rbd-hub 存储镜像数据(必须) 以上数据中对于我们要迁移的重要数据有 rbd-cpt-grdata 和 rbd-hub,根据 VOLUME 名称在默认的存储目录 /opt/rainbond/data/nfs 下查找,例如 pvc-9ec619e3-1e20-4d7a-b744-aa04088fb6c3。 使用 rsync 同步工具,将数据同步到新的 NFS 存储服务器上,根据以下命令开始同步,根据实际情况修改命令。 rsync -avP /opt/rainbond/data/nfs/pvc-9ec619e3-1e20-4d7a-b744-aa04088fb6c3 root@172.20.251.94:/data rsync -avP /opt/rainbond/data/nfs/pvc-d0bf09ca-5543-4050-bd08-b02ebb593b4e root@172.20.251.94:/data 注意:数据同步完成后切记要校验数据的完整性。 切换 Rainbond 存储 更改 Rainbond 默认存储 修改 rainbondcluster CRD资源,添加 storageClassName $ kubectl edit rainbondcluster -n rbd-system spec: rainbondVolumeSpecRWX: storageClassName: nfs-client #由 NFS-Client-Provisioner 创建的 sc 修改 rainbondvolumes CRD资源,修改 storageClassName 为 nfs-client $ kubectl edit rainbondvolumes -n rbd-system spec: storageClassName: nfs-client 删除 Rainbond 基于默认 NFS 创建的 StorageClass rainbondsssc rainbondslsc kubectl delete sc rainbondsssc rainbondslsc 删除 rbd-system 命名空间下旧的 PVC。这时候会删除不掉,因为还有 POD 在使用该 PVC,先 ctrl c 结束。 kubectl delete pvc data data-rbd-monitor-0 rbd-api rbd-chaos-cache rbd-cpt-grdata rbd-hub -n rbd-system 删除 Rainbond 组件的控制器让 rainbond-operator 控制 PVC 重新创建。 kubectl delete deploy rbd-api -n rbd-system kubectl delete ds rbd-chaos -n rbd-system kubectl delete sts rbd-monitor -n rbd-system kubectl delete deploy rbd-worker -n rbd-system kubectl delete deploy rbd-hub -n rbd-system kubectl delete deploy rbd-resource-proxy -n rbd-system kubectl delete sts rbd-eventlog -n rbd-system kubectl delete ds rbd-node -n rbd-system kubectl delete pod -l release=rainbond-operator -n rbd-system 等待所有 POD 重新创建,创建完成后 Rainbond 平台可正常访问,正常工作。 恢复数据 下面将前面备份的数据恢复到新创建的 PVC 中。 此时 rbd-cpt-grdata 和 rbd-hub 新创建的目录下的数据都是自动创建,先将其删除。 rm -rf /data/rbd-system-rbd-cpt-grdata-pvc-44167209-1006-4de5-9801-afcce996449c/* rm -rf /data/rbd-system-rbd-hub-pvc-c326b89f-7c0e-4990-a8e2-31472799ccc8/* 再将备份的 rbd-cpt-grdata 和 rbd-hub 数据分别同步到新的目录中,例如以下命令。 rsync -avP /data/pvc-9ec619e3-1e20-4d7a-b744-aa04088fb6c3/* /data/rbd-system-rbd-cpt-grdata-pvc-44167209-1006-4de5-9801-afcce996449c rsync -avP /data/pvc-d0bf09ca-5543-4050-bd08-b02ebb593b4e /data/rbd-system-rbd-hub-pvc-c326b89f-7c0e-4990-a8e2-31472799ccc8 注意:数据同步完成后切记要校验数据的完整性。 重新 Rainbond 部分组件的 POD 生效。 kubectl delete pod -l name=rbd-api -n rbd-system kubectl delete pod -l name=rbd-chaos -n rbd-system kubectl delete pod -l name=rbd-monitor -n rbd-system kubectl delete pod -l name=rbd-worker -n rbd-system kubectl delete pod -l name=rbd-hub -n rbd-system kubectl delete pod -l name=rbd-resource-proxy -n rbd-system kubectl delete pod -l name=rbd-eventlog -n rbd-system kubectl delete pod -l name=rbd-node -n rbd-system 更改 Rainbond 上的组件存储 替换底层存储后,此时 Rainbond 上组件的存储还未修改,此时需要进入 Rainbond 的组件中将当前存储删除重新添加。 挂载路径、存储类型保持不变,删除当前的配置添加新的同样配置即可。 至此存储切换完成,后续请验证应用的数据是否都完整。 删除默认 NFS 存储资源(可选) 修改 CRD 资源,将 nfs-provisioner replicas 设置为 0 $ kubectl edit rbdcomponent nfs-provisioner -n rbd-system spec: replicas: 0 删除 nfs-provisioner 控制器 kubectl delete sts nfs-provisioner -n rbd-system 删除 nfs-provisioner 的 PV、PVC kubectl delete pvc data-nfs-provisioner-0 -n rbd-system kubectl delete pv nfs-provisioner 删除宿主机上的 NFS 数据存储目录 rm -rf /opt/rainbond/data/nfs

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

跨平台游戏引擎 Axmol-2.0.0 发布

添加实验性的 WebAssembly 构建支持(WebGL 2.0),由@nowasm贡献 已知问题 WebGL context lost 尚未处理 部署在 github pages 的 demo 可快速预览,注意:由于 Github 限制,未开启 WASM 多线程支持,因此多线程模块测试会报错,请忽略。 注意,以下涉及多线程的模块需要服务器软件启用多线程,即添加指定 http 响应头,参考:https://web.dev/coop-coep/,客户端编译已开启多线程支持。 AudioEngine ASTC多线程软解 TextureCache::addImageAsync MeshRenderer::createAsync 扩展模块 live2d 不支持 WASM 构建,因为其 SDK Core 部分未开源,且未提供 WASM 的预编译库 使用以下命令可快速在本机编译WASM并在浏览器预览cpp_tests axmol run -p wasm -xb "--target,cpp_tests" 添加了两个CMake选项来控制线程数量和启动html页面模板: AX_WASM_THREADS, AX_WASM_SHELL_FILE, 参考CMakeOptions.md OpenGL3/GLES3 支持, 增加cmake选项AX_GLES_PROFILE控制 GLES 版本。 增加了 3D 模型实例化渲染支持 使用 glslcc 作为新的 shader 编译工作流, 使用 ESSL310 语法编写 shader, axmol 编译系统自动编译到目标平台: MSL for Apple(macOS/iOS/tvOS) ESSL300: Android, ANGLE GLSL330: Desktop GL GLSL100:Android-4.2 增强 ProgramManager 加载机制,更加易用 增强文本渲染,基于 SDF(有向距离场)渲染的描边特效支持 增强 FileStream 接口, 可处理 4GB+ 大文件 增强 ASTC 硬件解码检测的精准性 使用 ANGLE GLES3.0 作为 Win32 平台的默认渲染后端 第三法库更新: ANGLE: 113.0.5672.128 ==> 115.0.5790.173 curl: 8.1.2 ==> 8.2.1 fmtlib: 10.0.0 ==> 10.1.0 FreeType: 2.13.0 ==> 2.13.2 llhttp: 8.1.1 ==> 9.0.1 OpenSSL: 3.0.9 ==> 3.0.10 webp: 1.3.0 ==> 1.3.1 xxHash: 0.8.1 ==> 0.8.2 zlib: 1.2.13 ==> 1.3 API 修改: 修改:ProgramManager::registerCustomProgram 添加: ProgramManager::loadProgram 删除: ProgramManager::getCustomProgram 删除: CommandBuffer::setLineWidth

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

NativeScript 8.5.4 发布,跨平台原生应用框架

NativeScript 8.5.4现已发布。NativeScript 使用户能够直接从 JavaScript 访问native API。目前,该框架为丰富的移动开发提供了 iOS 和 Android 运行时,并可用于多种不同的用例。 Bug Fixes android:改进内容 uri 处理 (#10316) (77f252e) animation:避免取消时未捕获的拒绝 (#10309) (622f365) Application:inBackground处理和丢失一次 (#10307) (e430555) 确保应用程序实例提前初始化 (#10315) (0401b09) shared-transition:交互式更新的race condition (#10312) (25cc49d) shared-transitions:图层不透明度在下一次勾选时设置回原始值 (#10310) (0956cb0) 更新说明:https://github.com/NativeScript/NativeScript/releases/tag/8.5.4-core

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

Photoflare —— 跨平台图像编辑器

Photoflare 是一款可用于 Linux 和 Windows 上 简单易用的界面里提供了基本的图像编辑功能的图像编辑器。它有一个免费而开源的社区版本 它的功能包括裁剪、翻转/旋转、调整图像大小。你还可以使用诸如油漆刷、油漆桶、喷雾罐、模糊工具和橡皮擦之类的工具。魔术棒工具可让你选择图像的特定区域。 你还可以在图像上添加线条和文本。你还可以更改图像的色调。 Photoflare 的主要功能: 创建/绘制图像 裁剪图像 旋转图像 调整图像大小 使用画笔、油漆桶、喷涂、模糊工具和图像等工具编辑图像 在图像上添加线条和文字 更改图像的色调 添加老照片滤镜 批量调整大小、滤镜等

资源下载

更多资源
Nacos

Nacos

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

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

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

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册