简单的分布式多语言混合开发实现

语言 混合 简单 实现 服务器 分布式 开发 shell java 通信 编程进阶笔记
发布日期 2022-12-11 更新日期 2022-12-11 阅读次数 109 文章字数 585

有时候,我们不只有一台服务器,或者说一台服务器已经无法满足日益增长的需求。

同样,多语言混合开发,也是为了更灵活的实现需求。(在一些情况下,某种语言会难以实现某个效果,或总有bug,让人抓狂)

多语言的简单混合开发:基于shell通信。比如python调用java,则python调用系统命令,而系统命令调用java xxx进行编译,然后继续javac调用结果,java程序输出内容到shell,python从shell中取得java输出的结果并解析,从而完成通信。

简单来说,多语言之间通过系统执行命令,目标语言直接输出到shell,而源语言直接获取shell中的内容即可。

不同服务器,不同用户的分布式混合。主要通过ssh协议完成通信:a程序通过shell执行ssh命令登录b服务器,并执行对应命令,b返回结果到shell中,a程序取得结果,从而完成不同服务器之间的通信。

当然了,这是很简单的分布式混合实现方案,尽管显得不那么智能,但是也比较容易上手,适合新手。

扩展:在同一台服务器上,可以更简单的实现web端多语言,例如配置文件存储到text或sqlite,常规数据全部存储到数据库,至于cookie则使用父子域名或session配置redis或者直接用token,这样多个程序可以同时读取。混合操作时,以文件下载为例,可以php检验生成链接,然后重定向下载,下载服务器和语言可以是另一个服务器或java等。上传也是如此,先预上传,这是在申请上传,后后端计算预分配集群,再执行上传。


文章作者: 朱丰华

文章链接: https://smart.52dixiaowo.com/blog/post-107.html

版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。

语言 混合 简单 实现 服务器 分布式 开发 shell java 通信

发表评论

相关推荐
朱丰华   |   1年前   |   checkbox

checkbox默认传值问题

389    评论    点赞
朱丰华   |   1年前   |   linux · upx

Linux下安装UPX

406    评论    点赞
朱丰华   |   1年前   |   请求 · 一个

ab测压命令,apache测压工具

172    评论    点赞
朱丰华   |   1年前   |   go · gopath

Go自定义包并安装(GOPATH)

118    评论    点赞
朱丰华   |   1年前   |   正则 · 表达

正则表达式,实现if...then...else

113    评论    点赞
朱丰华   |   1年前   |   mysql · 变量 · sql

MySQL实现行号-自定义变量

113    评论    点赞
朱丰华   |   1年前   |   变量 · mysql · sql · 用户

MySQL用户自定义变量

95    评论    点赞
朱丰华   |   1年前   |   sql · php

PHP如何使用PDO批量执行SQL?

115    评论    点赞
朱丰华   |   1年前   |   linux · 文件

linux递归统计文件夹大小、du命令_Linux du命令:查看文件夹和文件的磁盘占用情况

193    评论    点赞
朱丰华   |   1年前   |   php

windows下编写、编译php扩展

158    评论    点赞
朱丰华   |   1年前   |   linux · php

linux下编写、编译php扩展

150    评论    点赞
朱丰华   |   1年前   |   curl

curl命令忽略ssl证书进行https请求

227    评论    点赞
朱丰华   |   1年前   |   php · 混淆 · obfuscate · git

yakpro-po混淆php代码

106    评论    点赞
朱丰华   |   1年前   |   c语言 · 编译

C语言中预编译#if的使用

75    评论    点赞
朱丰华   |   1年前   |   vue · model

vue语法v-model原理与实现

122    评论    点赞
朱丰华   |   1年前   |   js · vue · npm · 安装

npm快速上手

100    评论    点赞
朱丰华   |   1年前   |   js · 模块 · nodejs

nodejs引入自定义模块

48    评论    点赞
朱丰华   |   1年前   |   nvm · git · 安装

entos7安装、使用nvm

75    评论    点赞
朱丰华   |   1年前   |   centos

centos目录/etc/profile.d是干什么的

70    评论    点赞
朱丰华   |   1年前   |   js · 滚动 · html

原生js实现顶部进度条效果

59    评论    点赞
{{item.author_name}}   |   {{new Date(item.date*1000).log()}}   |   {{it}} ·

{{item.title}}

{{item.uv}}    评论    点赞