boto3 - sqs - 发送/清除/接收/删除消息
消息 删除 发送 清除 接收
2023-09-27 14:29:08 时间
import json
import boto3
# 数据库连接/云服务 ============================================
AP_S3_AKI = 'xxx'
AP_S3_SAK = 'xxx'
AP_REGION_NAME = 'xxx'
# 队列URL
TEST_QUEUE_URL = 'https://sqs.xxx'
sqs = boto3.client('sqs', region_name=AP_REGION_NAME, aws_access_key_id=AP_S3_AKI, aws_secret_access_key=AP_S3_SAK)
def producter(msg):
"""
发送消息
:param msg:
:return:
"""
sqs.send_message(
QueueUrl=TEST_QUEUE_URL,
MessageBody=json.dumps(msg),
)
print(f"发送到消息队列 成功!msg_detail = {msg} ")
def del_queue():
"""
清除消息队列
:return:
"""
sqs.purge_queue(QueueUrl=TEST_QUEUE_URL)
def receive_msg():
"""
读取并删除队列消息
:return:
"""
try:
response = sqs.receive_message(
QueueUrl=TEST_QUEUE_URL,
MaxNumberOfMessages=1,
MessageAttributeNames=['All'],
VisibilityTimeout=100,
WaitTimeSeconds=20
)
except Exception as e:
print(f'Receive message failed. | Exception: {e}')
return
if response.get('Messages'):
msg = response.get('Messages')[0]
print(f"msg = {msg}")
handle = msg.get('ReceiptHandle')
msg_info = json.loads(msg.get('Body'))
print(f"msg_info = {msg_info}")
try:
# del_response = sqs.delete_message(
# QueueUrl=TEST_QUEUE_URL,
# ReceiptHandle=handle
# )
# print(f"del_response = {del_response}")
pass
except Exception as e:
print(f'Receive cyberstar_info from cyberstar_queue failed. | Exception: {e}')
if __name__ == "__main__":
"""
发送, 接收, 删除, 清除 sqs消息到消息队列 - TEST_QUEUE_URL 示例
"""
# 发送
msg = {"name": "xiaoming", "age": "18"}
# producter(msg)
# 清除
# del_queue()
# 接收
receive_msg()
相关文章
- 【RocketMQ】RocketMQ事务消息 Demo
- 滴滴二面:Kafka是如何读写副本消息的?
- 华为云消息队列服务荣获首个双擎可信云稳定性最高级认证
- 继承CListCtrl,然后重载OnLButtonUP消息,发现变成双击才触发???
- 关闭页面向后台发送消息
- 第十一章 企业项目开发--消息队列activemq
- Spring消息之JMS.
- 一文看懂 Kafka 消息格式的演进
- http状态消息
- Windows – 使用类的成员函数作为Win32窗口消息回调处理函数WindowProc
- 使用thinkadmin内置WeChatDeveloper发送公众号模板消息
- 模仿UC浏览半屏显示push消息过来的网页
- Windows消息过滤
- 【Android WebSocket】Android 端 WebSocket 基本用法 ( 添加依赖和权限 | 创建 WebSocketClient 客户端类 | 建立连接并发送消息 )
- IE中ocx控件的无模式对话框不接收方向键等键盘消息的问题的解决办法
- MFC中消息循环处理的几个函数之间的区别
- protobuf 中的嵌套消息的使用 主要对set_allocated_和mutable_的使用
- Windows消息队列