Replication Functions

Redis Server 教育
Redis Server Course
Redis 定期点検/技術支援
Redis Technical Support
Redis エンタープライズサーバ
Redis Enterprise Server

Replication Functions

이 문서는 버전 7.0.8을 기준으로 작성했습니다.

  • Full Sync : Master Functions
  • Full Sync : Replica Functions
  • replication.c Functions
  • rdb.c Functions

Full Sync : Master Functions

마스터 서버에서 전체 동기화(full sync) 용도로 사용되는 함수들을 정리했습니다.

replconfCommand()

Redis version 3.0에 만들어졌고, replication.c에 있습니다.
안에 있는 버전(ver)은 각 기능이 해당 버전에서 처음 만들졌다는 표시입니다.

syncCommand()

Redis version 1.0에 만들어졌고, replication.c에 있습니다.

masterTryPartialResynchronization()

replication.c에 있습니다.

startBgsaveForReplication()

replication.c에 있습니다.

rdbSaveToSlavesSockets()

rdb.c에 있습니다.

rdbSaveBackground()

rdb.c에 있습니다.

replicationSetupSlaveForFullResync()

replication.c에 있습니다.

rdbSaveRioWithEOFMark()

rdb.c에 있습니다.

rdbSave()

rdb.c에 있습니다.

rdbSaveRio()

rdb.c에 있습니다.

checkChildrenDone()

server.c에 있습니다.

backgroundSaveDoneHandler()

server.c

backgroundSaveDoneHandlerDisk()

rdb.c

backgroundSaveDoneHandlerSocket()

rdb.c

updateSlavesWaitingBgsave()

replication.c

replicaPutOnline()

replication.c

sendBulkToSlave()

replication.c


Full Sync : Replica Functions

복제 서버에서 전체 동기화(full sync) 용도로 사용되는 함수들을 정리했습니다.

replicaofCommand()

replication.c

replicationSetMaster()

replication.c

connectWithMaster()

replication.c

syncWithMaster()

replication.c

slaveTryPartialResynchronization()

replication.c

readSyncBulkPayload()

Master로 부터 데이터를 받는다. replication.c

rdbLoad()

rdb.c

rdbLoadRioWithLoadingCtx()

rdb.c


replication.c Functions

소스 파일 replication.c에 있는 함수들입니다. 버전 7.0.8 기준으로 작성했습니다.

  1. ----- Utility functions -----
  2. replicationGetSlaveName()
  3. bg_unlink()
  4. ----- MASTER -----
  5. createReplicationBacklog()
  6. resizeReplicationBacklog()
  7. freeReplicationBacklog()
  8. createReplicationBacklogIndex ()
  9. rebaseReplicationBuffer ()
  10. resetReplicationBuffer ()
  11. prepareReplicasToWrite()
  12. feedReplicationBufferWithObject()
  13. incrementalTrimReplicationBacklog()
  14. freeReplicaReferencedReplBuffer()
  15. feedReplicationBuffer()
  16. replicationFeedSlaves()
  17. showLatestBacklog()
  18. replicationFeedStreamFromMasterStream()
  19. addReplyReplicationBacklog()
  20. getPsyncInitialOffset()
  21. replicationSetupSlaveForFullResync()
  22. masterTryPartialResynchronization()
  23. startBgsaveForReplication()
  24. syncCommand()
  25. replconfCommand()
  26. replicaPutOnline()
  27. replicaStartCommandStream()
  28. removeRDBUsedToSyncReplicas()
  29. sendBulkToSlave()
  30. rdbPipeWriteHandlerConnRemoved()
  31. rdbPipeWriteHandler()
  32. rdbPipeReadHandler()
  33. updateSlavesWaitingBgsave()
  34. changeReplicationId()
  35. clearReplicationId2()
  36. shiftReplicationId()
  37. ----------- SLAVE(REPLICA) -------------
  38. slaveIsInHandshakeState()
  39. replicationSendNewlineToMaster()
  40. replicationEmptyDbCallback()
  41. replicationCreateMasterClient()
  42. restartAOFAfterSYNC()
  43. useDisklessLoad()
  44. disklessLoadInitTempDb()
  45. disklessLoadDiscardTempDb()
  46. replicationAttachToNewMaster()
  47. readSyncBulkPayload()
  48. receiveSynchronousResponse()
  49. sendCommandRaw()
  50. sendCommand()
  51. sendCommandArgv()
  52. slaveTryPartialResynchronization()
  53. syncWithMaster()
  54. connectWithMaster()
  55. undoConnectWithMaster()
  56. replicationAbortSyncTransfer()
  57. cancelReplicationHandshake()
  58. replicationSetMaster()
  59. replicationUnsetMaster()
  60. replicationHandleMasterDisconnection()
  61. replicaofCommand()
  62. roleCommand()
  63. replicationSendAck()
  64. ------ MASTER CACHING FOR PSYNC ----
  65. replicationCacheMaster()
  66. replicationCacheMasterUsingMyself()
  67. replicationDiscardCachedMaster()
  68. replicationResurrectCachedMaster()
  69. ----- MIN-SLAVES-TO-WRITE ----
  70. refreshGoodSlavesCount()
  71. checkGoodReplicasStatus()
  72. ----- SYNCHRONOUS REPLICATION ----
  73. replicationRequestAckFromSlaves()
  74. replicationCountAcksByOffset()
  75. waitCommand()
  76. unblockClientWaitingReplicas()
  77. processClientsWaitingReplicas()
  78. replicationGetSlaveOffset()
  79. ----- REPLICATION CRON ----
  80. replicationCron()
  81. shouldStartChildReplication()
  82. replicationStartPendingFork()
  83. findReplica()
  84. getFailoverStateString()
  85. clearFailoverState()
  86. abortFailover()
  87. failoverCommand()
  88. updateFailoverStatus()

rdb.c Functions

소스 파일 rdb.c에 있는 함수들입니다. 버전 7.0.8 기준으로 작성했습니다.

  1. rdbReportError()
  2. rdbWriteRaw()
  3. rdbSaveType()
  4. rdbLoadType()
  5. rdbLoadTime()
  6. rdbSaveMillisecondTime()
  7. rdbLoadMillisecondTime()
  8. rdbSaveLen()
  9. rdbLoadLenByRef()
  10. rdbLoadLen()
  11. rdbEncodeInteger()
  12. rdbLoadIntegerObject()
  13. rdbTryIntegerEncoding()
  14. rdbSaveLzfBlob()
  15. rdbSaveLzfStringObject()
  16. rdbLoadLzfStringObject()
  17. rdbSaveRawString()
  18. rdbSaveLongLongAsStringObject()
  19. rdbSaveStringObject()
  20. rdbGenericLoadStringObject()
  21. rdbLoadStringObject()
  22. rdbLoadEncodedStringObject()
  23. rdbSaveDoubleValue()
  24. rdbLoadDoubleValue()
  25. rdbSaveBinaryDoubleValue()
  26. rdbLoadBinaryDoubleValue()
  27. rdbSaveBinaryFloatValue()
  28. rdbLoadBinaryFloatValue()
  29. rdbSaveObjectType()
  30. rdbLoadObjectType()
  31. rdbSaveStreamPEL()
  32. rdbSaveStreamConsumers()
  33. rdbSaveObject()
  34. rdbSavedObjectLen()
  35. rdbSaveKeyValuePair()
  36. rdbSaveAuxField()
  37. rdbSaveAuxFieldStrStr()
  38. rdbSaveAuxFieldStrInt()
  39. rdbSaveInfoAuxFields()
  40. rdbSaveSingleModuleAux()
  41. rdbSaveFunctions()
  42. rdbSaveDb()
  43. rdbSaveRio()
  44. rdbSaveRioWithEOFMark()
  45. rdbSave()
  46. rdbSaveBackground()
  47. rdbRemoveTempFile()
  48. rdbLoadCheckModuleValue()
  49. _ziplistPairsEntryConvertAndValidate()
  50. ziplistPairsConvertAndValidateIntegrity()
  51. _ziplistEntryConvertAndValidate()
  52. _listZiplistEntryConvertAndValidate()
  53. _lpPairsEntryValidation()
  54. lpPairsValidateIntegrityAndDups()
  55. rdbLoadObject()
  56. startLoading()
  57. startLoadingFile()
  58. loadingAbsProgress()
  59. loadingIncrProgress()
  60. updateLoadingFileName()
  61. stopLoading()
  62. startSaving()
  63. stopSaving()
  64. rdbLoadProgressCallback()
  65. rdbFunctionLoad()
  66. rdbLoadRio()
  67. rdbLoadRioWithLoadingCtx()
  68. rdbLoad()
  69. backgroundSaveDoneHandlerDisk()
  70. backgroundSaveDoneHandlerSocket()
  71. backgroundSaveDoneHandler()
  72. killRDBChild()
  73. rdbSaveToSlavesSockets()
  74. saveCommand()
  75. bgsaveCommand()
  76. rdbPopulateSaveInfo()

<< Full Sync Mem-to-Mem Server Main Memory >>

Email 返事がかかってなれば、メールでお知らせします。