- 使用 Kafka 优化物流系统的实践与思考
nlog3n
Java学习kafka分布式
使用Kafka优化物流系统的实践与思考在现代物流系统中,订单处理、仓储管理、运输调度等环节复杂且实时性要求高。为了满足异步解耦、高吞吐、高可用、事件驱动和数据可靠性等需求,Kafka作为分布式消息队列和流处理平台,成为了我们的首选。本文将分享我们在物流系统中使用Kafka的设计方案、优化实践以及遇到的问题和解决方案。一、系统背景和需求物流系统涉及多个业务模块,如订单处理、仓储管理、运输调度和状态跟
- Kafka 核心机制面试题--自问自答
亲爱的非洲野猪
kafka分布式
基础篇Q1:Kafka为什么能这么快?A:Kafka的高性能主要来自三大核心技术:零拷贝(Zero-Copy):通过sendfile()系统调用,数据直接从磁盘到网卡,避免了内核态和用户态之间的多次拷贝页缓存(PageCache):消息直接写入操作系统页缓存而非JVM内存,减少GC影响并利用OS缓存机制内存映射(mmap):索引文件通过内存映射实现,操作内存即操作文件Q2:Kafka的存储结构是怎
- kafka问题解决笔记
Leo_Hu666
kafka笔记分布式
1.ERRORShutdownbrokerbecausealllogdirsin/tmp/kafka-logshavefailed(kafka.log.LogManager)修改:/data3/kafka_2.12-3.9.1/config/server.propertieslog.dirs=/tmp/kafka-logs-new
- Kafka 核心原理篇:深入理解分布式消息系统的内核机制
真实的菜
kafka分布式kafkalinq
Kafka核心原理篇:深入理解分布式消息系统的内核机制文章目录Kafka核心原理篇:深入理解分布式消息系统的内核机制消息存储与持久化机制日志分段存储策略️**分段文件结构****索引机制详解**高效的磁盘读写与数据压缩算法**零拷贝技术(Zero-Copy)****数据压缩策略****页缓存优化**数据过期与清理策略⏰**基于时间的清理****基于大小的清理**️**日志压缩(LogCompact
- Java web开发常见中间件多版本下载备用
却诚Salong
安装问题和解决方法java中间件开发语言
备注:每次换电脑都要重新构建一下环境,下载找资源很麻烦,官网英文网页找个历史版本看不懂,还要慢慢去搜,所以直接整理一波,需要的自行收藏。1.nodejs自选版本下载:地址:https://nodejs.org/download/release/网速快,自选任何版本下载。2.maven自选版本下载:地址:https://archive.apache.org/dist/maven/maven-3/网速
- 数据中心双活架构解决方案
数据中心双活架构解决方案数据中心双活架构(Active-ActiveDataCenter)旨在实现业务高可用、负载均衡和灾难自动切换。以下是完整的解决方案,涵盖架构设计、关键技术、实施步骤及最佳实践。1.双活架构设计1.1基本架构模型同城双活(MetroActive-Active)两个数据中心距离≤100km(低延迟,通常100km(延迟较高,通常>10ms)采用异步数据复制(如Kafka+CDC
- 大数据集群架构hadoop集群、Hbase集群、zookeeper、kafka、spark、flink、doris、dataeas(二)
争取不加班!
hadoophbasezookeeper大数据运维
zookeeper单节点部署wget-chttps://dlcdn.apache.org/zookeeper/zookeeper-3.8.4/apache-zookeeper-3.8.4-bin.tar.gz下载地址tarxfapache-zookeeper-3.8.4-bin.tar.gz-C/data/&&mv/data/apache-zookeeper-3.8.4-bin//data/zoo
- 从开源小白到 Apache Member,我的成长之路
开源小秘书
云栖社区Apache高并发
我们走过的每一步路,都会留下印记,越坚实,越清晰。近日,Apache软件基金会(ASF)官方Blog宣布全球新增40位ApacheMember,张乎兴有幸成为其中一位。目前,全球共有771位ASFMember,中国仅13位。本文将分享作者从0基础的开源小白,一路走来的感触,希望把期间的经历分享出来,让更多的人看到,世界开源舞台的中国力量。只要有持续的付出,总会有所收获。初次参与开源2014年,我加
- 提名 Apache ShardingSphere Committer,说说方法
优质资源分享学习路线指引(点击解锁)知识定位人群定位Python实战微信订餐小程序进阶级本课程是pythonflask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。Python量化交易实战入门级手把手带你打造一个易扩展、更安全、效率更高的量化交易系统文章首发在公众号(龙台的技术笔记),之后同步到博客园和个人网站:xiaomage.info就在前几天,收到了ApacheS
- Apache Seata < 2.3.0 raft反序列化漏洞
墨菲安全
ApacheSeata反序列化漏洞CVE-2025-32897
【高危】ApacheSeata<2.3.0raft反序列化漏洞漏洞描述ApacheSeata(incubating)是一款开源的分布式事务解决方案,用于在微服务架构下提供高性能和简单易用的分布式事务服务。受影响版本中,SeataServer的Raft模块的CustomDeserializer直接通过Class.forName()加载用户可控的类名,未做安全校验,攻击者可借此利用服务端已有的恶意链实
- 从性能优化赛到社区Committer,走进赵宇捷在Apache Fory的成长之路
ApacheFory是一个基于JIT和零拷贝的高性能多语言序列化框架,实现了高效紧凑的序列化协议,提供极致的性能、压缩率和易用性。在多语言序列化框架技术领域取得了重大突破,推动序列化技术步入高性能易用新篇章!这一切,都源自全球开发者对开源的热忱。今天,一起走近这些用代码编织跨语言数据之网的Committer~一、自我介绍您的全名:赵宇捷当前职位/角色:后端开发工程师主要领域/方向:金融加入社区/项
- 喜讯!Apache SeaTunnel 荣获上海开源创新菁英荟优秀开源项目奖
数据库
近日,在2025上海开源创新菁英荟上,ApacheSeaTunnel凭借信创生态适配与智能化技术突破,荣获「优秀开源项目奖」。这个由中国团队孵化的开源项目,已成为全球数据集成领域的标杆。信创生态:支持20+国产数据库的无缝对接SeaTunnel深度适配华为OpenGauss、阿里OceanBase等20+主流国产数据库,支持CDC(变更数据捕获)与高性能加载。在证券行业信创转型中,SeaTunne
- Kafka消息轨迹追踪:分布式系统调试利器
大数据洞察
kafkalinq分布式ai
Kafka消息轨迹追踪:分布式系统调试利器关键词Kafka、消息轨迹追踪、分布式系统、调试、消息处理、事件溯源摘要本文聚焦于Kafka消息轨迹追踪这一分布式系统调试的关键技术。首先介绍Kafka消息轨迹追踪的概念基础,包括其在分布式系统中的背景、发展历史以及问题空间。接着阐述其理论框架,从第一性原理进行推导,并分析理论局限性和竞争范式。在架构设计方面,对系统进行分解,构建组件交互模型并可视化展示。
- DolphinScheduler 6 个高频 SQL 操作技巧
数据库
摘要:ApacheDolphinScheduler系列4-后台SQL经验分享关键词:大数据、数据质量、数据调度整体说明在调研了DolphinScheduler之后,在项目上实际使用了一段时间,有了一些后台SQL实际经验,分享如下。进入DolphinScheduler后台数据库,我这里使用的是MySQL数据库。以任务名称包含“ods_xf_act”的任务为例。一、修改任务组操作UPDATEt_ds_
- Apache HTTP Server部署全攻略
Sally璐璐
运维apachehttp网络协议运维
httpd简介httpd(ApacheHTTPServer)是一款历史悠久的开源Web服务器软件,由Apache软件基金会开发和维护。自1995年首次发布以来,Apache一直是Web服务器领域的领导者,以其稳定性、安全性和灵活性著称。根据W3Techs的最新统计,httpd支持着全球超过40%的网站运行,特别是在企业级应用中占据重要地位。httpd的主要特点包括:模块化架构:通过动态加载模块扩展
- Kafka日常运维命令总结
我科绝伦(Huanhuan Zhou)
kafka运维分布式
一、集群管理前台启动Brokerbin/kafka-server-start.sh/server.properties关闭方式:Ctrl+C后台启动Brokerbin/kafka-server-start.sh-daemon/server.properties关闭Brokerbin/kafka-server-stop.sh二、Topic管理操作命令创建Topicbin/kafka-topics.s
- IDEA相关配置记录
栖霖涧
intellij-ideajavaide
IDEA相关配置记录参考链接:参考链接:1、安装jdkD:\ProgramFiles\Java\jdk-21https://blog.csdn.net/2302_81410974/article/details/1420314162、安装mavenD:\Java\workspace-maven\apache-maven-3.9.10.├──LICENSE├──NOTICE├──README.txt
- DDD 分层架构实战指南:从项目结构到落地挑战
一、项目结构详解(以电商订单系统为例)src/main/java├──com.example│├──common#通用工具类、基础异常、常量│├──order#订单限界上下文(模块示例)││├──interfaces#用户接口层│││├──controller#HTTP/RESTAPI│││├──rpc#Dubbo/gRPC接口│││└──consumer#消息队列消费者(如Kafka监听)││├
- JT808教程:设置/查询终端参数
REDISANT提供互联网与物联网开发测试套件#互联网与中间件:RedisAssistantZooKeeperAssistantKafkaAssistantRocketMQAssistantRabbitMQAssistantPulsarAssistantHBaseAssistantNoSqlAssistantEtcdAssistantGarnetAssistant工业与物联网:MQTTAssist
- Java 访问HTTP,信任所有证书,解决SSL报错问题
qq_492448446
javahttpssl
packagecom.welab.automation.framework.utils.api;importcom.welab.automation.framework.GlobalVar;importcom.welab.automation.framework.utils.entity.api.SignatureUtil;importorg.apache.http.HttpEntity;impo
- Tomcat 源码解析:深入理解 Tomcat 运行机制
深山懒羊羊
tomcatjava
Tomcat是Apache软件基金会的一个开源的Servlet容器和Web服务器,是JavaWeb开发中最常用的应用服务器之一。它实现了Servlet和JSP规范,广泛用于开发和部署JavaEEWeb应用程序。了解Tomcat的源码,能够帮助我们深入理解Web服务器的工作原理,以及如何优化和定制我们的JavaWeb环境。本文将对Tomcat的核心架构进行解析,重点关注Tomcat的启动过程、请求处
- 深入理解Tomcat 基本架构
无心水
编程路上tomcat架构java深入理解TomcatServlet容器I/O模型NIO2
TheApacheTomcat®softwareisanopensourceimplementationoftheJavaServlet,JavaServerPages,JavaExpressionLanguageandJavaWebSockettechnologies.TheJavaServlet,JavaServerPages,JavaExpressionLanguageandJavaWebS
- Spring Cloud Bus 和 Spring Cloud Stream
中国lanwp
springboot
SpringCloudBus和SpringCloudStream都是SpringCloud生态中的消息通信组件,但它们的定位和使用场景有显著区别:1.SpringCloudBus核心定位:分布式系统的消息广播(配置刷新、事件传播)。典型场景:通过消息中间件(如RabbitMQ、Kafka)广播配置变更事件,实现所有微服务配置的集中刷新(如结合/actuator/refresh或/actuator/
- MySQL语句执行流程
xinghaoyan
mysql数据库
MySQL逻辑架构连接器连接命令一般是这么写的mysql-h$ip-P$port-u$user-p那么什么是连接器?MySQL连接器(MySQLConnector)是用于连接和与MySQL数据库进行交互的驱动程序。它提供了与MySQL数据库服务器通信的功能,包括建立连接、执行查询、更新数据等。MySQL提供了多种连接器,常用的有以下几种:JDBC连接器:JDBC(JavaDatabaseConne
- Exception: This server is not the leader for that topic-partition.
uplinker
javajavakafka
异常:2016081718:58:48ERRORcom.xxx.lac.service.impl.ComparePriceServiceImpl-307kafka-producer-network-thread|lac_compare_price_service_producer_3-sendCompleteexecptionThisserverisnottheleaderforthattopic
- 环境搭建:从零开始——Windows 环境下 Kafka 集群的 Docker 安装与配置全指南
DR. BULL ELECTRONICS
#环境搭建windowskafkadocker
环境搭建:从零开始——Windows环境下Kafka集群的Docker安装与配置全指南本博客详细介绍了如何在Windows环境下使用Docker安装和配置Kafka集群。通过提供具体的操作步骤和命令示例,从零开始帮助用户配置Docker、启动Kafka集群、并在SpringBoot应用程序中使用Kafka进行消息传递。该指南包括Docker安装、Kafka集群搭建、启动Kafka服务、创建主题、配
- Apache Gravitino 安装和配置指南
牧沛琚Immortal
ApacheGravitino安装和配置指南gravitino世界上最强大的数据目录服务,提供高性能、地理分布和联邦化的元数据湖。项目地址:https://gitcode.com/gh_mirrors/gra/gravitino1.项目基础介绍和主要的编程语言项目基础介绍ApacheGravitino是一个高性能、地理分布式和联邦化的元数据湖。它直接管理不同来源、类型和区域的元数据,并为用户提供统
- Kafka 消息队列
ikun·
kafka分布式
一、消息队列1.什么是消息队列消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。消息队列(MessageQueue)是一种应用间的通信方式,消息发送后可以立即返回,由消息系统来确保消息的可靠传递。消息发布者只管把消息发布到MQ中而不用管谁来取,消息使用者只管从MQ中取消息而不管是谁发布的。这样发布者和使用者都不用知道对方的存在。2
- 架构轻巧的kokoro 文本转语音模型
skywalk8163
软硬件调试多媒体python开发语言
Kokoro是一个具有8200万个参数的开放权重TTS模型。尽管其架构轻巧,但它提供了与较大型号相当的质量,同时速度更快,更具成本效益。使用Apache许可的权重,Kokoro可以部署在从生产环境到个人项目的任何地方。官网:hexgrad/kokoro:https://hf.co/hexgrad/Kokoro-82M现在我们来实践下KokoroLinux下安装使用安装库pipinstall-qko
- ShardingProxy-分库分表
菜逼の世界
ShardingSphereShardingSphereShardingProxy分表分库
ShardingProxy获取资源包下载地址ShardingProxy当前使用版本4.1.1安装apache-shardingsphere-4.1.1-sharding-proxy-bin.tar.gz解压即可目录说明bin:启动脚本start.bat:window启动脚本start.sh:linux启动脚本stop.sh:linux停止脚本conf:配置文件server
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D