- 博客(23)
- 资源 (6)
- 收藏
- 关注

原创 第一节:Sashulin Message Broker是什么?
Sashulin Message Broker(消息代理,简称SMB)是一款可编程的消息流处理软件,它使应用程序、系统和服务能够相互通信并交换信息。通过消息传递和转换,实现不同平台和不同语言编写的服务间的直接“对话”,最终进行业务逻辑实现。
2024-02-28 11:37:57
603
1

原创 适合Delphi\VB\C#winForm等程序员的前端框架:HtmlVCL
由于我们Delphi\VB\C#winForm现在是弱势群体,也想转转型,用OOP去理解各种变态前端框架真是泪奔。大家都在努力跟上时代步伐,但是非常吃力,入门易灵活运用太难。我的好友老曹,他学了半年Div+CSS,最后我问他咋样了,他说放弃了,还是Delphi香。我最讨厌的是隐藏式代码,就像界面上的隐藏功能一样,不知道代码写在哪里,但界面上有反应,还有关联式代码我也不喜欢,比如类似...
2019-04-23 23:38:39
1105
原创 Sashulin升级啦,开箱即用!
动态监听Mysql、Oracle、Sqlserver的insert、delete、update数据。将Html等网页文件发布成网站,支持Angular、VUE等框架编译后的文件。将IDE编译后的消息流和逻辑Class放到了该引擎中运行。通用型Java开发工具,并可以进行业务流可视化开发。3、升级Sashulin Message Broker 2.0。1、Sashulin IDE 2025全域通用开发工具。2、发布Sashulin Webserver 2025。4、升级SashulinCDC 2.0。
2024-12-26 20:19:39
237
原创 SashulinMessageBroker:在消息流中调用C++ DLL
在现实应用中,算法、核心逻辑为了追求快速高效的运行速度,很多人都采用C++来编写,并打包成动态库供外部使用。SMB针对这种应用场景,提供了DLL组件,实现在消息流中对DLL的动态调用。下实例讲解如何实现DLL as Service。
2024-05-23 15:45:57
448
原创 第九节:时间队列(终结篇)
经过九节的介绍,从框架层面对SMB做了剖析,这是一款从性能、稳定、易用性都非常出色的产品。在常规的时间管理中是时间到了触发某个任务,这样一个时间点对应一个任务。在特殊的场景下,任务不断放送到时间队列,时间一到,全部任务执行并释放。在我们自研的医院危急值系统中,有一个重要的功能就是由系统自动打电话给医护人员。2、医院检验科会在同一个时间给同科室推送多个危急值数据,要求临床都必须收到电话;它的属性很简单,只有interval属性,表示时间队列的释放频率。3、清洗:对时间队列中同科室消息进行合并;
2024-04-01 10:55:19
232
原创 第八节:深入讲解SMB中的Http组件
Http组作是SMB中的核心组件之一,在第七节中讲解了如何简洁的进行web程序部署和运行,这只是它的功能之一。在本节中,我们讲介绍Http组件的重要属性。
2024-03-21 15:17:43
979
1
原创 第七节:使用SMB发布Web前端程序
一直以来,多数人都使用Apache、IIS、Tomcat等开源或商业Web服务器来运行Web程序,各种参数太多,与我们简单易用逻辑相左。所以在架构设计的时候,我们也在考虑,我们公司的Web程序是否能运行在SMB中,通过简单设置即可用,让实施工程师能更好的部署和维护。经过对Http input组件的重度改造,终于实现了,只有一个参数配置,那就是前端文件路径^_^。我们所有Web程序都是使用Angular+Typescript开发,有些是使用HtmlVCL(纯属Html+JS框架)开发的,目前都能很好的支持。
2024-03-16 10:40:15
409
1
原创 第六节:使用SMB开发WebService
webservice在日常开发中是常用的接口形式,SMB在设计之初就将webservice作为重要的代理协议。在组件库中提供了webservice input和webservice output两个组件,分别用于发布接口和调用接口。以上的例子是在soapUI中测试,本例中将使用webservice output调用webservice接口。
2024-03-15 14:00:35
441
1
原创 第五节:使用SMB开发WebSocket通信
结束语:应用于生产环境中会更复杂,但核心点还是在ProcessMessage组件这里,把消息推送何处?目前我们全院消息通讯平台也是按这个逻辑进行开发,在国内西南某大型儿童医院为例,进行了2000个客户端,20几个系统的消息对接和众多业务场景设计,稳定、准确运行。这个消息流的逻辑是:开放一个api接口,用户调用接口后向服务器发送websocket消息。本节主要讲解在SMB中如何进行websocket快速开发,实现客户端连接、关闭、消息通讯等功能。openWebSocket:客户端连接服务器的处理逻辑。
2024-03-12 15:56:49
697
1
原创 第四节:SashulinMessageBroker的团队协作
SMB工程可以通过git或svn等工具进行管理。除此外,SMB也提供了云代码管理功能。
2024-03-10 14:34:42
437
1
原创 第三节:在Sashulin中自定义组件
上一节讲解了如何建立一个业务消息流,流程是由组件构成的。目前SMS提供了General、Database、MessageQueue、Socket、WebService、Http、Internet等系列常用组件,如果不满足业务需求,可以进行自定义组件开发。
2024-03-08 22:35:43
488
1
原创 第二节:开始Sashulin Message Broker旅程
创建第一个工程和消息流,并对工程进行部署、运行、调试等操作。让大家能快速了解整体框架,并能上手使用。
2024-03-01 10:52:29
1075
原创 无代码或低代码后端开发工具-Sashulin
大家好,我是ChromeWebBrowser.net的作者,最近看了sourceforge.net,这个控件还有朋友在下载研究,非常感激大家。距离上次发表新作品快有8年了,在这8年里除了社会环境发生了巨大的变化,另外人也老了,为了生活疲于应付糊口的工作。早在2009年接触了IBM WebSphere的各类套件,被他们的魅力深深吸引,在后续的工作中也频繁使用这些中间件,都在试想自己能不能做一套类似的套件。机会在2020年,美国禁止中国使用他们软件的新闻满天飞,让我萌生了做的念头,结果不知不觉地就搭起来了,虽
2021-03-06 00:08:48
852
原创 [原创]sqlserver2005 从大文本字段中查找某关键字对应的内容
在我自己工作中,要处理各种不同电子病例模板的数据,一些电子病例数据存放于数据库的大文本字段中,在我们自己系统中又要求重要的域要分开和提供接口供别人调用,我们需要把这些数据进行拆分,如拆分出:入院情况;出院时间;住院经过;出院情况;出院医嘱;出院嘱托;出院带药;入院诊断;出院诊断;病理诊断;因为模板不同,每个域的位置会不一样或者没有,所以我决定写一个函数来处理,下面我说一下我的做法:字段
2013-01-17 10:53:39
3812
2
原创 (原创)Asp.net使按第三范式设计的数据库大放异彩
第三范式的要求是表中的非主键列必须跟主键列存在依赖,如果非主键列间存在依赖那就不符合3NF,比如我们常见的冗余就不符合。有人都觉得3NF不太符合实际需求,所以数据库设计上都遵循了2NF设计,但我觉得按3NF设计的表其实非常简洁明了,层次结构清晰,只是平常遇到的一表能解决问题需要分解到多个表,原因就是3NF的要求很柯刻。下面我们看一下例子中要使用的按3NF设计的表(例子表使用SQLSERVER
2012-08-21 11:56:33
1897
原创 sqlserver实现字段名与字段值交叉(原创)
注:仅适合数据量小的表欢迎大家拍我吧....有表scoreid name city score-------------------------------------------------1 罗毅 重庆 802 小廖 杭州
2012-04-28 14:58:30
1859
原创 SQL: 找出数据表中的空隙值
在数据表中,经常定义了编号字段,而编号字段往往是程序自动生成的,当对数据表时行删除操作时,则为出现编号值不连续。当我们插入数据到数据表中时,一般是使用max函数获取最大值后再通过一定的规则组织成编号进行插入,虽然这样也能够保存编号的唯一性,但从整体来看,编号很凌乱。为了填充空隙值,我们就需要对编号空隙进行计算,以下是计算编号空隙值的SQL:SELECT min(编号+1)FROM booksW
2006-03-29 19:11:00
1252
原创 Java-SWing:为控件绘制虚线边框
设置虚线边框主要用BasicStroke类。关键代码如下:import java.awt.BasicStroke;import java.awt.Color;import java.awt.Graphics;import java.awt.Graphics2D;import javax.swing.*;import java.awt.geom.Rectangle2D;public clas
2006-03-22 23:21:00
7612
1
原创 详解 Tomcat: The value for the useBean class attribute is invalid 问题
使用Tomcat 常见 "The value for the useBean class attribute is invalid" 错误。该错误是指 JSP 中给定的 useBean 标签的 class 属性的值无效(不是 Bean 的属性值)。可见错误可能的原因包括:1. 在编译 JSP 时(不是运行时),指定的 Bean 类没找到2. Bean 虽然找到了,但是它不是 public 的,
2006-02-19 16:56:00
3194
原创 Hashtable排序
Hashtable内部排列的方式是散列排布,所以当输出信息时会是无序的。为了能保证输出的数据按照顺序排列,不要渴望用java自带的函数来对Hashtable对象进行调整处理。当我们获取Hashtable里的KEY和VALUE时,一般都运行了Map.Entry类来转换,好,现在就用这个类来作文章,我具体写了一个方法。代码:/** * 方法名称:getSortedHashtable * 参
2006-02-14 20:06:00
2674
2
原创 查询表中连续的某几条记录
不要传任何列的条件参数,查询表中连续的某几条记录如:表A,id列为主键id name sex age-------------------------1 luoyi male 212 yaya female 203 lili female 224 wuyong male 25.......................这个表的记录还有很多
2006-02-10 13:10:00
2245
1
原创 删除数据表中相同的记录!
一个表abc结构: aa bb cc //字段-------------------- //值 aa bb cc1 aa bb cc2 aa bb cc3....................从表结构可以看出有CC字段的数据是不同的,这个很重要。1.带条件参数的情况在oracle中:delete from abc where cc in (selec
2006-02-10 13:09:00
1983
原创 设计模式(Patterns in Java)
设计模式(Patterns in Java) -- http://www.jdon.com1设计模式(Patterns in Java)Java 提供了丰富的API,同时又有强大的数据库系统作底层支持,那么我们的编程似乎变成了类似积木的简单"拼凑"和调用,甚至有人提倡"蓝领程序员",这些都是对现代编程技术的不了解所至.在真正可复用的面向对象编程中,GoF 的《设计模式》为我们提供了一套可复用的面向
2006-02-10 13:03:00
3455
SashulinMessageBroker自定义组件工程
2024-03-08
MaxReport11111
2008-03-13
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人