当前位置: 首页 > news >正文

如何用asp做视频网站网页搜题工具

如何用asp做视频网站,网页搜题工具,线上推广的好处,游乐场网站开发📋 个人简介 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜📝 个人主页:馆主阿牛🔥🎉 支持我:点赞👍收藏⭐️留言&#x1f4d…

📋 个人简介

  • 💖 作者简介:大家好,我是阿牛,全栈领域优质创作者。😜
  • 📝 个人主页:馆主阿牛🔥
  • 🎉 支持我:点赞👍+收藏⭐️+留言📝
  • 💬格言:迄今所有人生都大写着失败,但不妨碍我继续向前!🔥
    请添加图片描述

目录

    • 📋 个人简介
  • 前言
    • IDL代码
    • 代码
      • 服务端与业务逻辑
      • 客户端
  • 结语

前言

前面我们在Thrift入门里面实现了Thrift实现RPC调用的简单案例,而Thrift最大的优势就是可以实现跨语言RPC调用,尤其在一些大厂,微服务各模块之间使用不同的语言是很常见的,有用java的,有go的,有python的,因此,选用Thrift实现RPC远程调用是很不错的选择,本节将在 RPC 框架之Thrift入门(一) 的案例基础上,使用java作为服务端,用python作为客户端,实现不同语言之间的RPC调用!

IDL代码

namespace java com.aniu.service
namespace py thrift_demostruct Person {  // 定义 Person 结构体1: required string name;   // 姓名,必选字段2: required i32 age;       // 年龄,必选字段3: optional string sex;    // 性别,可选字段
}service PersonService {  // 定义 PersonService 服务接口Person getByName(1: string name);  // 根据姓名获取 Person 信息bool save(1: Person person);       // 保存 Person 信息
}

分别使用以下代码生成java和python的代码

thrift --gen java person.thrift
thrift --gen py person.thrift

在这里插入图片描述

代码

服务端与业务逻辑

服务端代码和业务逻辑就是 RPC 框架之Thrift入门(一) 的案例里面的

package com.aniu.server;
import org.apache.thrift.protocol.TBinaryProtocol;
import org.apache.thrift.server.TServer;
import org.apache.thrift.server.TSimpleServer;
import org.apache.thrift.transport.TServerSocket;
import com.aniu.service.PersonService;
import com.aniu.service.impl.PersonServiceImpl;
public class Server {public static void main(String[] args) {try{// 创建一个新的 Thrift 服务端套接字,监听在端口 9000 上TServerSocket socket = new TServerSocket(9000);// 创建一个 PersonService 的 Processor。Processor 是 Thrift 中用于处理请求的接口,它需要一个实现了 PersonService 接口的对象作为参数。PersonService.Processor<PersonServiceImpl> processor = new PersonService.Processor<>(new PersonServiceImpl());// 创建一个二进制协议工厂对象。Thrift 支持多种协议,如 TBinaryProtocol、TCompactProtocol、TJSONProtocol 等,这里选择的是二进制协议。TBinaryProtocol.Factory factory = new TBinaryProtocol.Factory();// 创建一个 TSimpleServer 的参数对象 args1,并将之前创建的套接字、Processor 和协议工厂设置为其属性。TServer.Args args1 = new TSimpleServer.Args(socket);args1.processor(processor);args1.protocolFactory(factory);// 使用之前设置好的参数创建 TSimpleServer 对象TSimpleServer tSimpleServer = new TSimpleServer(args1);// 开始执行 TSimpleServer,开始监听并处理客户端的请求。tSimpleServer.serve();}catch (Exception e){System.out.println(e);}}
}
package com.aniu.service.impl;import com.aniu.service.Person;
import com.aniu.service.PersonService;
import org.apache.thrift.TException;public class PersonServiceImpl implements PersonService.Iface {@Overridepublic Person getByName(String name) throws TException {return new Person(name,18);}@Overridepublic boolean save(Person person) throws TException {return false;}
}

客户端

接下来我们就用python编写Thrift客户端来实现RPC调用 java服务端
首先安装thrift包:

pip install thrift

将生成的python代码拷贝到项目,然后编写python客户端!
在这里插入图片描述

from thrift.transport import TSocket
from thrift.transport import TTransport
from thrift.protocol import TBinaryProtocol
from thrift_demo import PersonService# 创建Thrift服务端的地址和端口
host = 'localhost'
port = 9000# 创建Thrift传输层和协议层
t_socket = TSocket.TSocket(host, port)
transport = TTransport.TBufferedTransport(t_socket)
protocol = TBinaryProtocol.TBinaryProtocol(transport)# 创建Thrift客户端
client = PersonService.Client(protocol)# 打开Thrift传输层连接
transport.open()# 调用Thrift客户端提供的接口
try:# 调用getName方法person = client.getByName("aniu")print(person)except Exception as e:print('Error:', str(e))# 关闭Thrift传输层连接
transport.close()

首先启动java服务端,然后启动python客户端,可以看到调用成功!
在这里插入图片描述

结语

对于thrift的基本案例就写完了,这些案例使用的thrift服务端模型都是TSimpleServer,同时只支持一个socket连接,用于我们这些小案例测试,后续总结springboot整合thrift的代码,我们使用其他thrift服务端模型!

http://www.yayakq.cn/news/979592/

相关文章:

  • 遂宁市建设局网站制作网站的第一步
  • 网站开发语言识别怎么推广一个产品
  • 如何建站网站免费网站模板psd
  • 数据服务网站策划方案宁夏住房和城乡建设厅网站执业资格
  • 商城网站建设计划书wordpress自定义链接怎么配置
  • 门户网站建设系统医院网站建设医生需要做什么
  • 制作一个网站的费用是多少wordpress浏览器跳转
  • 商务平台网站建设合同网页设计素材网站
  • 长春网站建设方案咨询seo优化排名
  • wordpress文章长网站推广优化方式
  • 营销型网站特点wordpress加上vip解析
  • 石家庄高端网站制作创业商机网官网
  • 国内有做外汇的正规网站吗太仓市住房和城乡建设局规网站
  • 马鞍山集团网站设计陕西省住房建设部官方网站一建
  • 帝国 只做网站地图美橙网站
  • 傻瓜式网站制作seosem是什么意思
  • 帮别人做网站的合作协议做的好的装修公司网站
  • 如何自己搭建一个个人网站北京建筑总公司
  • 厦门网站建设 九来网站免费正能量推荐
  • 企业一站式网站建设网站图片快速加载
  • 中国建设银行企业网上银行登录入口百度seo推广价格
  • 企业电子商务的网站的建设方式域名备案查询网站备案
  • 网站的差异为什么做网站推广
  • redis做网站新能源电动汽车
  • 蓝色旅游网站模板学校免费网站建设
  • 网站设计公司模板下载哪些网站可以做海报
  • 网站建设公司哪个好呀金融网站建设建站网站有哪些
  • 简述站点推广有哪些方式中国加盟网首页
  • 免费seo排名网站环保网站建设说明
  • 网站首页的浮窗怎么做如何创建网站后台