自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

astra_zhao的专栏

专注基于高并发,高可用,云计算,大数据,区块链的SaaS平台

  • 博客(209)
  • 资源 (4)
  • 收藏
  • 关注

原创 Kylix 追踪(五十八):从 Hello World 到 Web 服务

第五十八篇从零开始介绍Kylix——一门现代Pascal语言,支持原生编译、双后端(Go/LLVM)、自举运行。通过终端命令,新手可一键安装、编写HelloWorld,逐步掌握变量、函数、Web服务等核心功能。全篇强调“动手即过关”,用20行代码实现登录系统,展示其简洁、高效与生产级潜力。最终目标:让每个想认真写程序的人,都能轻松上手。

2026-10-12 22:13:48 203

原创 Kylix 追踪(七十二):用 Kylix 做 Android 和 iOS(零基础教程)

两个环境变量都空着时,的退出码是 0。tried:tried里的是默认位置,这台机器上那个文件夹不存在。第 4 章可以继续。要做第 6 章,按 6.1、6.2 设上 HOME,再跑 doctor,直到出现。tried:命令是。你平时只要看到同样的 “not found” 和,就回去设 HOME。

2026-10-12 22:16:35 294

原创 Kylix v0.7.1 深度解读 ——从 web 框架到 Windows 真落地

v0.7.1让Kylix在Windows上真正“心跳”起来:实现原生Winsock、支持跨平台编译PE32+、CI真机验证,三大突破使Windows成一等公民。同日发布的v0.7.2同步修复长期红的CI与自举链路,标志着项目进入“工程纪律成熟期”。从“能用”到“真用”,Kylix正以“工具链即文档”“同源三端”“CI即合同”的文化,迈向自包含生态的下一程。

2026-10-12 22:15:27 410

原创 Kylix 追踪(三十五):v4.5.0 — 跨过 100%

v4.4.0 留下的唯一未通过的教程是——多文件模块编译。beginend.在另一文件,定义。CHANGELOG 列出的已知限制里有两条与 stub 相关:•jsonutil 嵌套:嵌套对象/数组作为 raw 子串存储,JsonGetMap返回 null•httpclient Get 不重置 POST:同句柄先 Post 再 Get 时需手动重置这两条限制不影响教程通过(教程用例都是扁平 JSON、单次请求),但未来真实应用会踩坑。

2026-07-09 00:05:37 345

原创 Kylix 项目追踪(三十一):v4.0.0 正式发布!LLVM M3 让原生后端跨过生产可用线

Kylix v4.0.0 发布摘要(2026-07-01) 本次重大更新标志着Kylix语言在原生编译能力上的关键突破,主要包含三大核心改进: LLVM后端里程碑3 实现完整异常处理(try/except/finally/嵌套) 补全控制流(break/case/match/foreach) 覆盖基础表达式(多参数WriteLn/数组字面量/字符串插值) 14/15基础教程可通过LLVM编译为原生二进制 标准库Phase7 新增数据库(SQLite/MySQL/PostgreSQL) 线程安全缓存(LRU+

2026-07-03 23:00:27 466

原创 一只“会自己搭脚手架的鸟“:Ornith 1.0 凭什么同时摩擦 Qwen 和 Claude Opus?

DeepReinforce团队开源Ornith系列模型,采用创新"自适应脚手架强化学习"技术,让AI自主优化工作流程。其中9B小模型在SWE-Bench上超越基底31B模型17分,397B旗舰版更超越ClaudeOpus4.7。模型家族覆盖各类硬件场景,35B混合专家模型因高效推理成为性价比首选。该技术突破使AI不仅会写代码,还能自主决策开发流程,MIT开源协议推动快速落地应用。这一范式创新或将重塑AI编程助手的未来发展方向。

2026-07-03 22:52:19 790

原创 Kylix 项目追踪(三十):v3.3.0 正式发布!Body 绑定 + JWT + OpenAPI

Kylix v3.3.0 版本正式发布,标志着该项目从"自举"迈向"生产级Web框架"的关键一步。本次更新主要包含三大核心功能:1)[Body]注解实现声明式请求体绑定,2)内置JWT认证支持,3)OpenAPI 3.1文档自动生成。同时完善了类型检查器MVP、打通包管理器与编译器集成,并修复了错误码冲突等工程细节。这些改进使Kylix Boot框架具备了与SpringBoot等主流框架竞争的最小可用面,同时保持编译期生成代码的零反射优势。版本采用"一个mi

2026-06-30 09:44:22 298

原创 Kylix v3.1.0 深度解析:从架构突破到应用框架

Kylix v3.1.0 标志着该项目从架构突破转向应用开发的关键转折。该版本主要包含四大更新:1)推出SpringBoot风格的KylixBoot框架,提供路由、DI容器、中间件等核心功能;2)新增注解语法支持,为后续自动路由注册和ORM映射奠定基础;3)修复5个关键编译器问题,打通实际开发路径;4)推进LLVM后端,支持数组类型和优化等级。通过KylixBoot框架与注解语法的结合,Kylix开始构建声明式Web开发体验,同时保持对底层编译能力的持续优化。这一版本将v3.0的多后端架构能力收束到应用开发

2026-06-28 21:49:50 472

原创 Kylix v3.0.0-alpha 完全上手指南:从编译安装到写出第一个 Pascal 程序

这篇Kylix入门教程详细介绍了从零开始学习Kylix(现代Pascal语言)的全过程。主要内容包括: 环境准备与安装 需要Go 1.18+和Git环境 通过git clone获取源码并编译 验证安装和Hello World示例 基础语法 变量声明与类型(Integer、String等) 控制流(if-else、for/while循环) 函数与过程定义 记录(record)和数组使用 进阶特性 异常处理(try-except) 类与面向对象(当前版本限制) 标准库使用(HTTP服务器、JSON处理等) 开发

2026-06-21 22:23:44 255

原创 Kylix v3.0.0-alpha 深度解析:架构突破——LLVM原生后端、WASI、包注册中心与标准库全面自举

Kylix v3.0.0-alpha 发布:重大架构突破带来四大核心特性 摘要: Kylix 语言迎来里程碑式更新,v3.0.0-alpha 版本实现了从"编译到Go的Pascal"到"多后端架构现代语言"的跃迁。该版本包含四大架构级创新: LLVM原生后端:支持生成33KB原生二进制(相比Go后端缩小60倍) WASI支持:可编译为WebAssembly系统接口,运行在边缘计算平台 包注册中心:完整的包发布/搜索生态闭环 标准库自举:纯Kylix实现jsonutil

2026-06-21 22:07:39 388

原创 Kylix v2.3.0 深度解析:开发者体验全面升级 + WebAssembly 后端登场

Kylix v2.4.0版本聚焦生态完善与工程闭环,主要包含五大核心改进:1)i18n全面接入编译器错误诊断系统,实现结构化错误码与多语言提示;2)REPL的:type命令升级为真实类型推导,复用编译器核心能力;3)修复SetLength对nil/截断/置零等场景的支持,确保动态数组语义正确性;4)包管理器支持嵌套依赖与lockfile机制,构建确定性依赖生态;5)标准库推进至Phase3,新增纯Kylix编写的stringbuilder和resulttype模块。该版本通过夯实基础设施而非堆叠新功能,使K

2026-06-20 17:45:09 331

原创 Kylix:当 Pascal 遇见 Go —— 一门现代编程语言的重生之路

Kylix是一个将现代Pascal编译为Go的开源项目,保留了Pascal的强类型和结构化特性,同时引入类型推断、Lambda、异步编程等现代功能。通过编译到Go,可直接复用Go生态和工具链,获得高性能和跨平台支持。项目提供完整工具链,包括CLI、LSP服务、VSCode扩展和REPL,并计划构建SpringBoot风格的框架。Kylix展现了经典语言设计在现代环境中的新可能,目前已在GitHub开源。

2026-06-19 12:37:59 202

原创 在Win 11下使用Visual Studio 2019和cygwin编译JBR(Java SDK 17)源码

请到JetBrainsRuntime\build\windows-x86_64-server-release\make-support\failure-logs查看具体报错,将utf8格式,改成utf8 with bom保存,我目前遇到了下面大概20个左右文件修改。如果出现failure的字样,可以适当修改,如果不好改,建议重装换没有空格的目录。编译成功后,进入build/windows-x86_64-server-release目录,可以看到编译的目录。安装目录一定不要带空格,如果有空格,请重装。

2023-03-11 20:45:38 1597

原创 Ubuntu20.04 安装Lazarus 2.2.4版本(解决libgtk2.0-dev问题)

在安装过程中,还是遇到了libgtk2.0-dev安装问题,通过apt-get安装都不行,所以只有直接安装相关deb包才行,主要是安装下面三个deb包。成功安装完上面三个deb包后,运行下面命令,即可正确安装lazarus2.2.4版本。上面这三个包可以在下面路径下载。

2023-01-02 12:13:36 2431

原创 Ubuntu 20.04安装NVIDIA 2080s显卡驱动

2.下载完后注意两个事项,一个是要关闭BIOS的secure boot选项,另一个是要进入非图形化界面进行安装。注意这两个步骤,基本就能安装成功。1.从官网上下载对应的2080s显卡驱动,我下载是最新的NVIDIA-Linux-x86_64-525.60.11.run驱动。

2023-01-01 11:16:25 1693

原创 正确使用docker compose安装Kafka并运行示例

kafka spring boot

2022-11-05 16:53:10 1714

原创 Rust学习指南(一)安装RUST后台管理框架

Rust安装非常简单,只要将Visual Studio的或者Visual Stuido 2022的构件工具安装即可。当被问及要安装哪些内容时,请确保已选择 “C++ build tools”,并包括 Windows 10 SDK 和英文语言包。具体可以参考这个图:最后下载,rusttup-init.exe即可。

2022-10-23 09:34:26 2155

原创 JDK8和JDK11使用Hotswap Agent在idea进行热部署

之前就了解了Hotswap Agent和DCEVM可以替换jrebel,但一直没有详细了解下,今天写这篇文章,让大家可以在JDK8和JDK11环境下进行idea热部署。

2022-10-22 16:31:20 1898

原创 大家有空帮忙点下链接,在广州的朋友,有机会可以参加下

⌈QCon 全球软件开发大会⌋7月底将落地广州,时间是7月31日-8月1日,有没有小伙伴来现场聊聊啊~今年广州站有Web 3.0、数据架构选型、AI 工程、业务安全与风控等12个专题,50+技术案例现场分享,详细内容>>http://gk.link/a/11u3T......

2022-06-30 15:22:38 268

原创 Spring Native在Windows环境使用说明

1.在IDEA使用Spring Initializr创建带有spring native的Spring boot项目,参考如下:2. 安装GraalVM的SDK,暂时下载JDK11,不下载JDK17如果github访问不了,请使用fastgitgub工具,进行访问dotnetcore/FastGithub: github加速神器,解决github打不开、用户头像无法加载、releases无法上传下载、git-clone、git-pull、git-push失败等问题下载完后,跟安装Java.

2022-04-23 17:45:20 2059 2

原创 Debian10安装maven,nodejs以及在Docker运行pig项目

1.安装mavensudo apt-get install maven运行mvn -version命令以验证安装:mvn -version将aliyun镜像添加到/usr/share/maven/conf/settings.xml目录<mirror> <id>nexus-aliyun</id> <mirrorOf>*</mirrorOf> <name>Nexus aliyun</name> <url&

2021-07-02 17:40:13 689

原创 Debian10.8安装最新版FreeSwitch1.10.6,并安装mod_hiredis

通过前面几个FreeSwitch的安装说明,我们总结了如下经验:1.FreeSwitch最好安装在Debian操作系统,因为有很多模块是基于Debian操作系统安装2.官方以及在Google和Baidu搜索了很多文章,也是推荐在Debian下安装FreeSwitch1.下载Debianhttps://www.debian.org/CD/http-ftp/下载最新的Debian 102.安装Debian 10省略使用Virtual Box一直下一步安装即可。如果需要查看freesw

2021-06-30 16:52:12 1964

转载 Java编程实现Spring boot重启和关闭(一)

一直有个想法,想实现如何让spring boot服务重启,满足下面的使用场景1.通过集群方式部署后,用户可以无感知的实现spring boot重启2.结合定时工具,可以指定在某个时间点自动重启3.屏蔽开源热加载工具导致的一些错误。4.重启不适合互联网项目,但是比较适合企业级项目部署,互联网项目还是需要考虑热加载,以及完善热加载的功能1.方法一:通过创建新上下文重新启动我们可以通过关闭应用程序上下文并从头创建一个新上下文来重新启动应用程序。尽管这种方法非常简单,但我们必须小心处理...

2021-05-06 14:34:00 9778 8

原创 dubbo入门到精通(一)

dubbo背景https://dubbo.apache.org/zh/docs/v2.7/user/preface/background/dubbo的需求https://dubbo.apache.org/zh/docs/v2.7/user/preface/requirements/dubbo的架构https://dubbo.apache.org/zh/docs/v2.7/user/preface/architecture/dubbo用法https://dubbo.apache.o

2021-04-23 15:41:10 579

原创 opensips核心变量(三)

OpenSIPS提供了在路由脚本中使用的多种类型的变量。变量类型之间的差异来自(1)变量的可见性(当变量可见时),(2)变量附加到什么(变量驻留的位置),(3)变量的读写状态(某些类型的变量是只读的)以及(4)多个值(对于同一个变量)的处理方式。OpenSIPS变量在脚本中很容易识别,因为它们的所有名称(或符号)都以$符号开头。OpenSIps有下面几种变量类型Types of variables:脚本变量——顾名思义,这些变量严格绑定到脚本路由。这些变量仅在路由块中可见-它们与消息或事务无关,

2021-04-14 15:10:08 936

原创 OpenSIPS Crash 宕机的初步解决办法(二)

opensips和freeswitch宕机的解决方法基本一致,通过dump出来的core文件,然后通过gdb调试工具,查找到错误,找到错误后,可以定位到源码出错的地方,修改源码或者注释源码即可。下面是摘抄https://opensips.org/Documentation/TroubleShooting-Crash截图What is the problem?Most likely you have stumbled upon a bug in OpenSIPS, which can be cau

2021-04-14 14:53:34 1147

原创 关于使用JCEF-Java Chromium Embedbed Framework

为什么要使用JCEF了?因为我们发现有些基于Web的应用不是很稳定,在业务连续性方面还是有些缺陷,如果不想耗费精力和时间以及成本。使用基于Java应用的嵌入浏览器的方式反而是一种比较好的解决方案,可以通过集成Java应用以及websocket跟Web页面交互。这篇文章主要是给大家开个头,个人精力有限,也借助了一些牛人开源的项目进行演练,本人主要还是起到抛砖引玉的作用,想要这篇文章达到技术水平至高的作业,请不要再继续浏览。1.JCEF介绍(翻译来自xuanyimao)Java Chromium嵌入

2021-04-08 14:45:06 12389 1

原创 自己动手写神经网络,关于Neuroph Studio进行动物分类数据集以及如何完成示例(一)

如何运行示例请参考3.3.2节《自己动手写神经网络 葛一鸣注》1.下载数据集2.优化后的训练集和测试集如下:1,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,1,0,0,0,0,0,01,0,0,1,0,0,0,1,1,1,0,0,4,1,0,1,1,0,0,0,0,0,00,0,1,0,0,1,1,1,1,0,0,1,0,1,0,0,0,0,0,1,0,0,01,0,0,1,0,0,1,1,1,1,0,0,4,0,0,1,1,0,0,0,0,0,01,0,0,1,0

2021-03-22 19:00:07 684

原创 Visual Studio Code两个小技巧,使用正则表达式批量去除第一个逗号前的内容(含逗号)以及去除最后一个逗号后面的内容(耗费4个小时)

操作如下:去除第一个逗号前的内容包含第一个逗号^[^,]*(?=,),不包含第一个逗号^[^,]*(?=,)去除最后一个逗号前的内容不包含最后一个逗号[^,]*$包含最后一个逗号,[^,]*$

2021-03-22 10:06:13 1742

原创 CentOS 7 最小化版安装Opensips-CP

0.正常安装opensips,具体参考我的文章https://blog.csdn.net/penker_zhao/article/details/1122633951.编辑网卡配置文件,在/etc/sysconfig/network-scripts目录下,将onboot=yes2.yum install net-tools,查看ip地址,设置静态IP3.关闭防火墙,systemctl stop firewalld,systemctl disable firewalld。4.关闭selin

2021-03-18 14:09:51 1182

原创 在Visual Studio 2019下编译freeswitch 1.10.5源码(二)

在解决方案浏览器,找到相关模块右键进行build3.屏蔽VS2019不能编译的项目,在资源浏览器找到modules.conf.xml屏蔽mod_b64,再编译mod_opus的时候在freeswitch_1.10.5\libs\opus-1.1\win32\下新增version.h,再build内容如下:#definePACKAGE_VERSION"1.1"如图所示:最后,将下面几个tar.gz文件(具体到files.freeswitch.org下载)。最..

2021-03-12 16:21:19 1122

原创 在Visual Studio 2019下编译freeswitch 1.10.5源码(一)

freeswitch 1.10.5源码默认使用visual studio 2017打开,为了照顾我新的电脑和vs2019,看能否在2019下顺利编译,具体过程如下:1.使用vs2019打开Freeswitch.2017.sln,最后会告诉我Setup.2017.wixproj不兼容,具体如下图所示下载wixtool的vs2019插件,解决这个问题:https://marketplace.visualstudio.com/items?itemName=WixToolset.WixToolset

2021-03-11 18:11:20 1843

原创 配置Nginx wss连接FreeSwitch的ws地址,使用sip.js进行测试(成功版)

具体请先看nginx的webrtc配置WebRTC - FreeSWITCH - Confluencemap $http_upgrade $connection_upgrade { default upgrade; '' close;}server { listen 443; server_namewss.somedomain.com.ua; ssl on; ssl_certificate /etc/n...

2021-02-24 14:24:27 4565 8

原创 CentOS 7个性化安装Freeswitch 1.10.5,支持pgsql,nginx代理

1.安装包 yum install-y https://files.freeswitch.org/repo/yum/centos-release/freeswitch-release-repo-0-1.noarch.rpm epel-release yum-builddep -y freeswitch yum install-y yum-plugin-ovl centos-release-scl rpmdevtools yum-utils git libtools unixODBC-..

2021-01-26 10:19:23 933

原创 在Docker下的Debian容器无法进行apt-get update的方法

1.使用Docker exec -it **** /bin/bash进入容器2.使用echo -e'nameserver 8.8.8.9'> /etc/resolv.conf 添加到/etc/resolv.conf文件继续添加使用echo -e'nameserver 6.6.6.6'>> /etc/resolv.conf3.使用mv命令进行迁移,在使用echo命令添加到sources.list文件mv /etc/apt/sources.list /etc/apt/s...

2021-01-10 17:26:10 1909

原创 在centos 7使用opensips+freeswitch搭建集群环境-正确安装opensips(一)

1.搭建两台freeswitch用pgsql数据库1.首先参考https://blog.csdn.net/penker_zhao/article/details/110004084搭建单机版freeswitch2.将搭建新的freeswitch,修改2.然后虚拟一台设备,也是使用freeswitch搭建,只是都是连同一个pgsql3.修改sip_profiles/internal.xml和external.xml的配置项:ext-sip-ip和ext-rtp-ip4.两台分别重启fre.

2021-01-07 12:11:45 3723 1

原创 J2EE快速开发平台-ruoyi cloud学习指南(一)

1.ruoyi-cloud技术概念RuoYi-Cloud 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Cloud & Alibaba、Vue、Element-Ul),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源。2.详细安装说明2.1后端运行参考:https://doc.ruoyi.vip/ruoyi-cloud/document/hjbs.h

2020-12-30 17:50:04 1168

原创 年底奉献spring boot 2.3.2+jeesite版本,方便微小企业开发应用(使用artemis和redis4)

首先,感谢https://gitee.com/kedou/springboot2-jeesite改项目,该项目基于spring 2.0.4但是在spring boot 2.3最新版有问题。所以在此进行修改,并奉献给大家1.下载windows redishttps://github.com/tporadowski/redis/releases/tag/v5.0.9启动方法>redis-server redis.windows.conf2.将activemq替换成artemis,artem

2020-12-29 12:19:29 545

原创 大数据学习整理篇(十四)Phoenix 5.0.0+HBase2.0测试环境Docker镜像,支持二级索引,优化查询性能(下)

首先感谢iteblog,在他的基础上将之前Hbase2.0.6改成了Hbase2.0.0版本,这样,就可以正常使用Phoenix的二级索引功能,具体操作如下:1.将https://gitee.com/astra_zhao/hbase-docker的Dockerfile进行修改,主要修改ENV HBASE_VERSION 2.0.6改成ENV HBASE_VERSION 2.0.02.修改hbase-site.xml,加入下面的内容<property> <nam

2020-12-08 18:11:41 1088

原创 Java程序员修炼之道(一)-并发中产生的死锁

Java程序员修炼之道的代码 https://download.csdn.net/download/penker_zhao/13452596重温埃文斯的Java程序员修炼之道,在第三章中运行示例,发现运行了几次不能死锁,所以改了下代码,让其产生死锁,具体死锁原因,请自行浏览书本获取:package com.java7developer.chapter4;public class DeadlockMicroBlogNode implements SimpleMicroBlogNode { .

2020-12-04 16:45:55 426

java-1.8.0-openjdk-1.8.0.181版本

Windows OpenJDK 1.8.0.181 zip版本

2022-10-22

X-Lite_5.8.3_102651.exe

X-Lite 5.8.3_102651安装文件,安装完freeswitch后,使用软电话进行测试,如何测试,可以到百度自行查找

2020-02-21

sipjs-demo.7z

sipjs-demo.7z

2021-02-24

nn.practice.zip

自己动手写神经网络示例代码

2017-08-17

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除