我是怎么学习.net core的<二>

调试eshop


前面eshop源码只能一个一个文件的看,看到了网站部分,就有写头晕啦。

还是希望彻底运行调试一下程序,才能有感觉。

先测试运行环境。安装redis,rabbitmq.

redis安装比较简单,测试也非常容易,就是打开一个客户端连接,一个KEY里面直接写Value

开另外一个客户端,就可以根据KEY取Value

总体上来说就是一个巨大的dictionary.

然而程序还是没有跑通,提示的Bug是rabbitmq连接为空的。

可是明明测试rabbitmq是成功的,调试的时候发现amqp的端口是5678

修改端口依然调试失败

专门写个小程序测试一下rabbitmq用法,简单大气,比较喜欢这种风格,发现在本地的话,修改hostname即可

不知道为啥eshop配置文件的hostname是空的,所以出错了,把HostName修改为本地

果然调试通过,输出swagger 风格Api,大功告成

使用Polly


var policy = Policy.Handle()                .Or()

.WaitAndRetry(5, retryAttempt => TimeSpan.FromSeconds(Math.Pow(2, retryAttempt)), (ex, time) =>

{

_logger.LogWarning(ex.ToString());

});

using (var channel = _persisterConnection.CreateModel())

{

var eventName = @event.GetType()

.Name;

channel.ExchangeDeclare(exchange: BROKER_NAME,

type: "direct");

var message = JsonConvert.SerializeObject(@event);

var body = Encoding.UTF8.GetBytes(message);

policy.Execute(() =>

{

channel.BasicPublish(exchange: BROKER_NAME,

routingKey: eventName,

basicProperties: null,

body: body);

});

}


接触Swagger



简直被惊艳了,不仅可以描述API,还可以发送请求,连MODEL都展示了,而我同事一直在手动写WORD文档,先研究研究然后告诉他怎么提高效率

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 134,860评论 18 139
  • =========================================================...
    lavor阅读 3,505评论 0 5
  • 来源 RabbitMQ是用Erlang实现的一个高并发高可靠AMQP消息队列服务器。支持消息的持久化、事务、拥塞控...
    jiangmo阅读 10,398评论 2 34
  • 什么叫消息队列 消息(Message)是指在应用间传送的数据。消息可以非常简单,比如只包含文本字符串,也可以更复杂...
    lijun_m阅读 1,363评论 0 1
  • 在一个偏远的修道院里,有一位每天与豌豆为伴的年轻修道士。修道院的长老经常责备他说:“你天天不读神圣的圣经,却细心呵...
    海王星1984阅读 183评论 0 0