我需要验证并向参与服务器发送反馈。我们如何在处理程序代码中添加Netty请求代码channel.write()?

时间:2012-03-24 11:07:11

标签: multithreading netty

  1. 我正在编写一个基于Netty的Notifying Server,它从服务器(A)通过RPC接收消息缓冲区数百秒,然后在检查后将其发送到Http实时服务器有效性(验证包括检查标签ID及其值)。如果验证不成功,系统需要使用错误代码将错误反馈发送回服务器(A)。 我打算在处理程序中编写验证逻辑,但是如果发现消息无效,我们如何使处理程序发送反馈?

  2. 我们是否可以将数据库代码也包含在处理程序中,因此我可以将验证特定的详细信息保存到数据库中?是否会添加此数据库代码会妨碍Netty性能?如果是,那么在处理程序中使用数据库(插入)代码的更好方法是什么? 请有人能指导我吗?我可以在Executor中编写数据库代码吗?

  3. 如果我问一个太基本的问题,请原谅我。我还处于学习阶段。

1 个答案:

答案 0 :(得分:0)

让我试着回答这些问题。

1)我认为你想发送ERROR或SUCCESS响应并不重要。只需使用Channel.write(..)编写它,并拥有一个可以处理ChannelBuffer编码的编码器。这里没有区别

2)您应该在前面添加一个ExecutionHandler,以确保您的db调用不会阻止IO-Thread。见[1]。

[1] http://netty.io/docs/stable/api/org/jboss/netty/handler/execution/ExecutionHandler.html