Advertisement
Guest User

Untitled

a guest
May 6th, 2015
254
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.98 KB | None | 0 0
  1. <?php
  2.  
  3. require_once('../lib/avro.php');
  4.  
  5. function create_record() {
  6. $rec = array('member_id' => 1392, 'member_id2' => 999);
  7. for ($i = 0; $i < 20; $i++) {
  8. $rec['field' . $i] = 'test_value' . $i;
  9. }
  10. return $rec;
  11. }
  12.  
  13. function create_writer() {
  14. $schema_json = <<<_JSON
  15. {"name":"member",
  16. "type":"record",
  17. "fields":[
  18. {"name":"member_id", "type":"int"},
  19. _JSON;
  20.  
  21. for ($i = 0; $i < 20; $i++) {
  22. $schema_json .= '{"name":"field' . $i . '", "type":"string"},';
  23. }
  24.  
  25. $schema_json .= '{"name":"member_id2", "type":"int"}]}';
  26. $schema = AvroSchema::parse($schema_json);
  27. $writer = new AvroIODatumWriter($schema);
  28. return $writer;
  29. }
  30.  
  31. for ($i = 0; $i < 10000; $i++) {
  32. $writer = apc_fetch("writer");
  33. if ($writer === false) {
  34. $writer = create_writer();
  35. apc_store("writer", $writer);
  36. }
  37. $io = new AvroStringIO();
  38. $encoder = new AvroIOBinaryEncoder($io);
  39. $writer->write(create_record(), $encoder);
  40. $binary_string = $io->string();
  41. // file_put_contents("/tmp/avro.log", $binary_string, FILE_APPEND);
  42. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement