Advertisement
Guest User

Untitled

a guest
Mar 21st, 2019
49
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.23 KB | None | 0 0
  1. import org.jgroups.JChannel;
  2. import org.jgroups.Message;
  3. import org.jgroups.protocols.*;
  4. import org.jgroups.protocols.pbcast.FLUSH;
  5. import org.jgroups.protocols.pbcast.GMS;
  6. import org.jgroups.protocols.pbcast.NAKACK2;
  7. import org.jgroups.protocols.pbcast.STABLE;
  8. import org.jgroups.stack.ProtocolStack;
  9. import pl.edu.agh.dsrg.sr.protos.BankOperationProtos;
  10.  
  11. import java.util.Random;
  12.  
  13. /**
  14. * Created by lab on 3/21/2019.
  15. */
  16. public class SimpleChat {
  17. static public void main(String[] args) throws Exception {
  18. System.setProperty("java.net.preferIPv4Stack", "true");
  19. JChannel channel = new JChannel(false);
  20.  
  21. ProtocolStack stack = new ProtocolStack();
  22. stack.addProtocol(new UDP())
  23. .addProtocol(new PING())
  24. .addProtocol(new MERGE3())
  25. .addProtocol(new FD_SOCK())
  26. .addProtocol(new FD_ALL().setValue("timeout", 12000).setValue("interval", 3000))
  27. .addProtocol(new VERIFY_SUSPECT())
  28. .addProtocol(new BARRIER())
  29. .addProtocol(new NAKACK2())
  30. .addProtocol(new UNICAST3())
  31. .addProtocol(new STABLE())
  32. .addProtocol(new GMS())
  33. .addProtocol(new UFC())
  34. .addProtocol(new MFC())
  35. .addProtocol(new FRAG2())
  36. .addProtocol(new SEQUENCER())
  37. .addProtocol(new FLUSH());
  38.  
  39. channel.setProtocolStack(stack);
  40.  
  41. stack.init();
  42.  
  43. channel.connect("operation");
  44.  
  45. for (int i = 0; i < 2000; ++i) {
  46. BankOperationProtos.BankOperation.OperationType[] types = BankOperationProtos.BankOperation.OperationType.values();
  47.  
  48. BankOperationProtos.BankOperation operation = BankOperationProtos.BankOperation.newBuilder()
  49. .setValue(Math.random() / 100 + 1.0)
  50. .setType(types[new Random().nextInt(types.length)]).build();
  51.  
  52. Message msg = new Message(null, null, operation.toByteArray());
  53. channel.send(msg);
  54.  
  55. Thread.sleep((long) (Math.random() * 10));
  56. }
  57.  
  58. System.out.println("Sleep");
  59.  
  60. Thread.sleep(5 * 60 * 1000);
  61.  
  62. channel.close();
  63. }
  64. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement