当前位置: 首页 > 软件库 > Web应用开发 > Web框架 >

volts.dev

Golang WEB+RPC 框架
授权协议 未知
开发语言 Google Go
所属分类 Web应用开发、 Web框架
软件类型 开源软件
地区 国产
投 递 者 南宫松
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

volts.dev

a golang web+rpc framework

框架提供关于Http服务器端最精简逻辑实现,理论上可以兼容大部分其他框架中间件(需要小量修改)

服务器目录树
App
│
├─module 应用模块目录
│  ├─web 模块目录
│  │  ├─static 静态资源目录
│  │  │   ├─uploads 上传根目录
│  │  │   ├─lib 资源库文件目录(常用作前端框架库)
│  │  │   └─src 资源文件
│  │  │      ├─js 资源Js文件目录
│  │  │      ├─img 资源图片文件目录
│  │  │      └─css 资源Css文件
│  │  ├─model 模型目录
│  │  ├─template 视图文件目录
│  │  ├─data 数据目录
│  │  ├─model 模型目录
│  │  └─controller.go 控制器
│  │
│  ├─base 模块目录
│  │
│  └─... 扩展的可装卸功能模块或插件
│
├─static 静态资源目录
│  ├─uploads 上传根目录
│  ├─lib 资源库文件目录(常用作前端框架库)
│  └─src 资源文件
│     ├─js 资源Js文件目录
│     ├─img 资源图片文件目录
│     └─css 资源Css文件
├─template 视图文件目录
├─deploy 部署文件目录
│
├─main.go 主文件
└─main.ini 配置文件

hello world demo

package main

import (
	"fmt"
	"github.com/volts-dev/volts/server"
)

type (
	ctrls struct {
	}
)

func (self ctrls) hello_world(hd *server.THandler) {
	hd.RespondString("Hello volts.dev World!")
}

func main() {
	srv := server.NewServer("name")
	srv.Url("Get","/hello", ctrls.hello_world)
	srv.Url("Get","/hello2", func(c *web.THandler) {
		c.RespondString("Hello, World")
		return
	})

	srv.Url("Get","/hello3", func(c *server.THandler) {
		c.RenderTemplate("hello_world.html", map[string]interface{}{"static": "youpath"})
		fmt.Println("b", c.Route.FilePath)
		return
	})

	srv.Listen(":8080")
}
  • Dev GridControl (1)、gridView.AddNewRow() (2)、实现 gridView_InitNewRow 事件 注:使用泛型集合绑定数据源,在GridView中实现自动添加行时,AddNewRow()方法不起效。在获取数据行时, GetDataRow()方法无法获取数据,如果使用gridcontrol用于只呈现数据可以使用泛型集合作为数据源,如果涉及到增、删、改建议使

  • dev TreeList 获取可视区域节点方法 /// <summary> /// 获取可视区域节点 /// </summary> /// <param name="treeList">TreeList</param> /// <param name="conditonHanlder">条件委托</param> //

  • dev TreeList 常用属性 1:父子节点联动 .OptionsBehavior.AllowRecursiveNodeChecking = true; 2:是否显示Checkbox .OptionsView.ShowCheckBoxes = true; 3:隐藏列 treeList1.Columns["MenuUrl"].Visible = false; 4:数据绑定 treePDA.Nod

  • dev TreeList 节点联动 1:正确方法 只需要设置属性即可  treeList1.OptionsBehavior.AllowRecursiveNodeChecking = true;   2:编程实现方法:   //1、选择某一节点时,该节点的子节点全部选择 //2、取消某一节点时,该节点的子节点全部取消选择 //3、某节点的子节点全部选择时,该节点选择

 相关资料
  • 随着分布式技术和微服务思想流行,技术公司逐步将服务拆分为独立运行的小模块,提高系统整体的健壮性,加快特性的演进速度。微服务通过定义完善的接口进行交互,解耦系统、敏捷迭代、方便服务治理。RPC是目前微服务最广泛的通信方式。然而,众多团队各自研发具备服务治理功能的RPC通信框架,一方面增加开发成本,消耗人力重复造轮子;另一方面不同序列化协议的RPC服务,无法互相通信,影响可用性。因此,通用的RPC通信

  • 对服务开发者, MTransport 屏蔽了底层网络通信细节,从而更专注于业务自身逻辑实现。支持不同语言版本的代码实现, 保持通信协议的一致性,支持服务注册、服务发现、异步通信、负载均衡等丰富的服务治理功能。

  • 主要内容:1.RPC流水线工程,2.RPC 技术选型,3.如何设计 RPC1.RPC流水线工程 ① Client以本地调用的方式调用服务 ② Client Stub接收到调用后,把服务调用相关信息组装成需要网络传输的消息体,并找到服务地址(host:port),对消息进行编码后交给Connector进行发送 ③ Connector通过网络通道发送消息给Acceptor ④ Acceptor接收到消息后交给Server Stub ⑤ Server Stub对消息进行解码,

  • 随着分布式技术和微服务思想流行,技术公司逐步将服务拆分为独立运行的小模块,提高系统整体的健壮性,加快特性的演进速度。微服务通过定义完善的接口进行交互,解耦系统、敏捷迭代、方便服务治理。RPC是目前微服务最广泛的通信方式。然而,众多团队各自研发具备服务治理功能的RPC通信框架,一方面增加开发成本,消耗人力重复造轮子;另一方面不同序列化协议的RPC服务,无法互相通信,影响可用性。因此,通用的RPC通信

  • Uragano 旨在提供一个搭建和使用简单的高性能 RPC 框架。Uragano 是基于 netstandard2.0 开发的。Uragano 默认采用 DotNetty 实现远程通信,使用 MessagePack 进行编解码。

  • Flex提供RPC服务以向客户端提供服务器端数据。 Flex为服务器端数据提供了相当大的控制。 使用Flex RPC服务,我们可以定义要在服务器端执行的用户操作。 Flex RPC Sservices可以与任何服务器端技术集成。 其中一个Flex RPC服务提供内置支持,可以通过线路传输压缩二进制数据,速度非常快。 Flex提供以下三种类型的RPC服务 S.No RPC服务和描述 1 HttpSe

  • 基于GWT的应用程序通常由客户端模块和服务器端模块组成。 客户端代码在浏览器中运行,服务器端代码在Web服务器中运行。 客户端代码必须在网络上发出HTTP请求才能访问服务器端数据。 RPC,远程过程调用是GWT使用的机制,其中客户端代码可以直接执行服务器端方法。 GWT RPC是基于servlet的。 GWT RPC是异步的,客户端在通信期间从不被阻止。 使用GWT RPC Java对象可以直接在

  • RPC

    RPC文档托管在这里: https://tendermint.com/rpc/ 若要更新文档,可以在 rpc/core 目录 编辑相关的 godoc 注释。