{"id":2902,"date":"2017-03-07T08:42:52","date_gmt":"2017-03-07T16:42:52","guid":{"rendered":"https:\/\/www.couchbase.com\/blog\/?p=2902"},"modified":"2025-06-13T20:09:45","modified_gmt":"2025-06-14T03:09:45","slug":"determining-status-replication-couchbase-lite","status":"publish","type":"post","link":"https:\/\/www.couchbase.com\/blog\/ko\/determining-status-replication-couchbase-lite\/","title":{"rendered":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ub77c\uc774\ud2b8\uc5d0\uc11c \ubcf5\uc81c \uc0c1\ud0dc \ud655\uc778\ud558\uae30"},"content":{"rendered":"<div id=\"attachment_2919\" style=\"width: 650px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-2919\" class=\"size-full wp-image-2919\" src=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2017\/03\/19300545790_82ac2a3444_z.jpg\" alt=\"\" width=\"640\" height=\"427\" srcset=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg 640w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z-300x200.jpg 300w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z-400x267.jpg 400w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z-450x300.jpg 450w, https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z-20x13.jpg 20w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><p id=\"caption-attachment-2919\" class=\"wp-caption-text\">\uc548\ub4dc\ub808\uc2a4 \ub2c8\uc5d0\ud1a0 \ud3ec\ub77c\uc2a4(https:\/\/www.flickr.com\/photos\/anieto2k) \uc81c\uacf5<\/p><\/div>\n<p><a href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/guides\/couchbase-lite\/index.html?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ub77c\uc774\ud2b8<\/a> \ub294 \ubc31\uadf8\ub77c\uc6b4\ub4dc \uc2a4\ub808\ub4dc\ub97c \uc0ac\uc6a9\ud558\uc5ec \ubcf5\uc81c(\ub3d9\uae30\ud654)\ub97c \uc2e4\ud589\ud569\ub2c8\ub2e4. \ubcf5\uc81c \uc2dc\uc791 \ubc0f \uc911\uc9c0\ub294 \ub3d9\uae30\uc801\uc73c\ub85c \uc774\ub8e8\uc5b4\uc9c0\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4. \uc774\ub85c \uc778\ud574 \ubcf5\uc81c \uc0c1\ud0dc\ub97c \uac10\uc9c0\ud558\ub294 \ub370 \uc2e4\uc218\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uadf8\ub9ac\uace0 <a href=\"https:\/\/developer.couchbase.com\/documentation\/mobile\/current\/references\/couchbase-lite\/couchbase-lite\/replication\/index.html\">\ubcf5\uc81c \ud074\ub798\uc2a4<\/a> \uc5d0\ub294 \ud50c\ub7ab\ud3fc\uc5d0 \ub530\ub77c <code>\uc2e4\ud589 \uc911<\/code> \uc18d\uc131 \ub610\ub294 \ub2e4\uc74c\uacfc \uac19\uc740 \ud3b8\ub9ac\ud55c \ub8e8\ud2f4 <code>isRunning()<\/code>. \uc774\uac83\uc740 \ubcf5\uc81c \uc0c1\ud0dc\ub97c \ud655\uc778\ud558\ub294 \uac00\ubcbc\uc6b4 \ubc29\ubc95\uc785\ub2c8\ub2e4.<\/p>\n<p>\ud558\uc9c0\ub9cc \uc774\ub97c \uc0ac\uc6a9\ud558\uba74 \uc608\uae30\uce58 \uc54a\uc740 \uacb0\uacfc\uac00 \ubc1c\uc0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc608\ub97c \ub4e4\uc5b4 \uc800\ub294 \ucd5c\uadfc\uc5d0 \uc5f0\uc18d \ubcf5\uc81c\ub97c \uc0ac\uc6a9\ud558\ub294 \uc720\ud2f8\ub9ac\ud2f0\ub97c \uc791\uc131\ud588\uc2b5\ub2c8\ub2e4. \uc774 \uc720\ud2f8\ub9ac\ud2f0\uc5d0\ub294 \uc2dc\uc791 \ubc0f \uc911\uc9c0 \ud1a0\uae00 \ubc84\ud2bc\uc774 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc720\ud2f8\ub9ac\ud2f0\ub294 <code>isRunning<\/code> \ub97c \ud074\ub9ad\ud558\uc5ec \ubc84\ud2bc \uc0c1\ud0dc\ub97c \uc5c5\ub370\uc774\ud2b8\ud569\ub2c8\ub2e4. \uc774\uac83\uc740 \ub098\uc05c \uc0dd\uac01\uc778 \uac83\uc73c\ub85c \ubc1d\ud600\uc84c\uc2b5\ub2c8\ub2e4. \ubcc0\uacbd \uc0ac\ud56d\uc774 \ubc31\uadf8\ub77c\uc6b4\ub4dc\uc5d0\uc11c \ubc1c\uc0dd\ud55c\ub2e4\ub294 \uc810\uc744 \uace0\ub824\ud558\uba74 \ub2f9\uc5f0\ud55c \uc77c\uc774\uc9c0\ub9cc \uac04\uacfc\ud558\uae30 \uc27d\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\ub300\uc2e0 \uc120\ud638\ud558\ub294 \uc811\uadfc \ubc29\uc2dd\uc740 \ubcc0\uacbd \uc218\uc2e0\uae30\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \ub2e4\uc74c\uc740 \uc608\uc2dc\uc785\ub2c8\ub2e4.<\/p>\n<p>\ub450 \uac1c\uc758 \ud074\ub798\uc2a4\uac00 \uc788\uc2b5\ub2c8\ub2e4. \ub370\uc774\ud130\ubca0\uc774\uc2a4 \ud5ec\ud37c \ud074\ub798\uc2a4\ub294 \ub2e8\uc21c\ud654\ub97c \uc704\ud574 \uba87 \uac00\uc9c0 \ud45c\uc900 \uc5f0\uc0b0\uc744 \ub798\ud551\ud569\ub2c8\ub2e4. \ucf5c\ubc31 \ud328\ud134\uc744 \uc0ac\uc6a9\ud558\ub294 \uc778\ud130\ud398\uc774\uc2a4\ub97c \ucd94\uac00\ud588\uc2b5\ub2c8\ub2e4. \ud074\ub77c\uc774\uc5b8\ud2b8 \ud074\ub798\uc2a4\uac00 \uc774\ub97c \uad6c\ud604\ud574\uc57c \ud569\ub2c8\ub2e4. \ud5ec\ud37c \ud074\ub798\uc2a4\ub294 \ud074\ub77c\uc774\uc5b8\ud2b8\uc5d0 \uc544\ubb34 \uac83\ub3c4 \uc804\ub2ec\ud558\uae30 \uc804\uc5d0 Couchbase Lite \ubcc0\uacbd \uc54c\ub9bc\uc744 \uc18c\ud654\ud569\ub2c8\ub2e4. \uc774\ub807\uac8c \ud558\uba74 \uc6b0\ub824 \uc0ac\ud56d\uc744 \uc798 \ubd84\ub9ac\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc544\ub798 \ucf54\ub4dc \ubaa9\ub85d\uc740 \uac1c\uc694\uc785\ub2c8\ub2e4. \ud544\uc218\uc801\uc778 \ubd80\ubd84\ub9cc \ubcf4\uc5ec\uc90d\ub2c8\ub2e4. \uba3c\uc800 \ud5ec\ud37c \ud074\ub798\uc2a4\ub97c \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<pre class=\"lang:java decode:true\">public class DBHelper implements Replication.ChangeListener {\r\n  private boolean replicationActive = false;\r\n  private List stateListeners = new ArrayList&amp;lt;&amp;gt;();\r\n  ...\r\n\r\n  public interface ReplicationStateListener {\r\n    void onChange(boolean isActive);\r\n  }\r\n\r\n  public void startReplication(URL gateway, boolean continuous) {\r\n    ...\r\n\r\n    pushReplication.addChangeListener(this);\r\n    pushReplication.start();\r\n  }\r\n\r\n  public void stopReplication() {\r\n    ...\r\n  }\r\n\r\n  public void addReplicationStateListener(ReplicationStateListener listener) {\r\n    stateListeners.add(listener);\r\n  }\r\n\r\n  public void removeReplicationStateListener(ReplicationStateListener listener) {\r\n    stateListeners.remove(listener);\r\n  }\r\n\r\n  \/\/ Replication.ChangeListener\r\n  @Override\r\n  public void changed(Replication.ChangeEvent changeEvent) {\r\n    if (changeEvent.getError() != null) {\r\n      Throwable lastError = changeEvent.getError();\r\n\r\n      \/\/ React to the error\r\n\r\n      return;\r\n    }\r\n\r\n    if (changeEvent.getTransition() == null) return;\r\n\r\n    ReplicationState dest = changeEvent.getTransition().getDestination();\r\n\r\n    replicationActive = ((dest == ReplicationState.STOPPING || dest == ReplicationState.STOPPED) ? false : true);\r\n\r\n    stateListeners.forEach(listener -&gt; listener.onChange(replicationActive));\r\n  }\r\n}<\/pre>\n<p>DBHelper\ub294 \ub2e4\uc74c\uacfc \uac19\uc774 <code>\ubcf5\uc81c.\ubcc0\uacbd \ub9ac\uc2a4\ub108<\/code> \uc778\ud130\ud398\uc774\uc2a4\uc785\ub2c8\ub2e4. \uc774\uac83\uc740 Couchbase Lite\uc5d0\uc11c \uc815\uc758\ud55c \uc778\ud130\ud398\uc774\uc2a4\uc785\ub2c8\ub2e4. In <code>\uc2dc\uc791 \ubcf5\uc81c<\/code> \uc774 \ub9ac\uc2a4\ub108\ub97c \ub9ac\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ucd94\uac00\ud569\ub2c8\ub2e4. \uc7ac\uc815\uc758\ud560 \uc218 \uc788\ub294 \uba54\uc11c\ub4dc\uac00 \ud558\ub098 \uc788\uc2b5\ub2c8\ub2e4, <code>\ubcc0\uacbd\ub428<\/code>. . <code>\ubcc0\uacbd \uc774\ubca4\ud2b8<\/code> \uc804\ub2ec\ub41c \uac12\uc740 \uc5ec\ub7ec \uac00\uc9c0 \uac12\uc744 \uac00\uc9c8 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774 \uc608\uc5d0\uc11c\ub294 \uba3c\uc800 \uc624\ub958\ub97c \ud655\uc778\ud558\uace0 \uc624\ub958\uac00 \ubc1c\uc0dd\ud558\uba74 \uc0ac\uc6a9\uc790\uc5d0\uac8c \uc54c\ub9bd\ub2c8\ub2e4. \uadf8\ub807\uc9c0 \uc54a\uc73c\uba74 \uc774\uac83\uc774 \ubcf5\uc81c \uc0c1\ud0dc \uc804\ud658 \uc774\ubca4\ud2b8\uc778\uc9c0 \ud655\uc778\ud569\ub2c8\ub2e4. \ub300\uc0c1 \uc0c1\ud0dc\ub294 \ub2e4\uc74c \uc911 \ud558\ub098\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. <code>\ucd08\uae30<\/code>, <code>\ub7ec\ub2dd<\/code>, <code>IDLE<\/code>, <code>\uc624\ud504\ub77c\uc778<\/code>, <code>\uc911\uc9c0<\/code>\ub610\ub294 <code>\uc911\uc9c0\ub428<\/code>.<\/p>\n<p>\uc774 \uacbd\uc6b0\uc5d0\ub294 \ubcf5\uc81c\uac00 \uc885\ub8cc\ub418\ub294\uc9c0 \uc5ec\ubd80\ub9cc \uc54c\uace0 \uc2f6\uae30 \ub54c\ubb38\uc5d0 \ubc18\ud658\uac12\uc744 \ub2e8\uc21c\ud654\ud588\uc2b5\ub2c8\ub2e4. \ud074\ub77c\uc774\uc5b8\ud2b8\uac00 \ub458 \uc774\uc0c1\uc758 \ub9ac\uc2a4\ub108\ub97c \ub4f1\ub85d\ud560 \uc218 \uc788\ub3c4\ub85d \ud5c8\uc6a9\ud558\ubbc0\ub85c \ub9c8\uc9c0\ub9c9 \ucf54\ub4dc \ube44\ud2b8\ub294 \ubaa8\ub4e0 \ucf5c\ubc31\uc744 \ubc18\ubcf5\ud558\uc5ec \ud638\ucd9c\ud569\ub2c8\ub2e4.<\/p>\n<p>\ud074\ub77c\uc774\uc5b8\ud2b8 \ud074\ub798\uc2a4\ub294 \ud6e8\uc52c \ub354 \uac04\ub2e8\ud569\ub2c8\ub2e4. \uc774 \ud074\ub798\uc2a4\ub294 \ud5ec\ud37c \ud074\ub798\uc2a4\uc5d0\uc11c \ud544\uc694\ud55c \uc778\ud130\ud398\uc774\uc2a4\ub97c \uad6c\ud604\ud569\ub2c8\ub2e4. \uc778\uc2a4\ud134\uc2a4\ub97c \uc0dd\uc131\ud558\ub294 \ub3d9\uc548 \ub9ac\uc2a4\ub108\ub97c \ub4f1\ub85d\ud558\uae30\ub9cc \ud558\uba74 \ub429\ub2c8\ub2e4. <code>onChange<\/code> UI\uc5d0\uc11c \ud544\uc694\ud55c \ubaa8\ub4e0 \uc791\uc5c5\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.<\/p>\n<pre><code class=\"language-java\">public class Client implements DBHelper.ReplicationStateListener {\r\n  private DBHelper service = DBHelper.getInstance();\r\n  ...\r\n\r\n  public Client() {\r\n    service.addReplicationStateListener(this);\r\n  }\r\n\r\n  ...\r\n\r\n  \/\/ DBHelper.ReplicationStateListener\r\n  @Override\r\n  public void onChange(boolean isActive) {\r\n    \/\/ Code to handle the change\r\n  }\r\n}<\/code><\/pre>\n<p>\uc774 \ucf54\ub4dc\ub294 \uc81c\uac00 \ub9cc\ub4e0 \ub3c4\uad6c\uc5d0\uc11c \uac00\uc838\uc628 \uac83\uc785\ub2c8\ub2e4. \ub3c4\uad6c \uc790\uccb4\uc5d0 \ub300\ud55c \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/couchbase-mobile-changes-explorer-part-1\/\">\uc774 \uac8c\uc2dc\ubb3c<\/a>\uc18c\uc2a4 \ucf54\ub4dc\ub294 GitHub\uc5d0\uc11c \ucc3e\uc744 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/github.com\/couchbaselabs\/CBM-Changes-Explorer\">\uc5ec\uae30<\/a>.<\/p>\n<h2>\ud3ec\uc2a4\ud2b8 \uc2a4\ud06c\ub9bd\ud2b8<\/h2>\n<p>\ub354 \ub9ce\uc740 \ub9ac\uc18c\uc2a4\ub97c \ud655\uc778\ud558\uc138\uc694. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/developers\/community\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">\uac1c\ubc1c\uc790 \ud3ec\ud138<\/a> \ud2b8\uc704\ud130\uc5d0\uc11c \ud314\ub85c\uc6b0\ud558\uc138\uc694 <a href=\"https:\/\/twitter.com\/CouchbaseDev\">\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \uac1c\ubc1c<\/a>.<\/p>\n<p>\uc9c8\ubb38\uc5d0 \ub300\ud55c \ub2f5\ubcc0\uc744 \uac8c\uc2dc\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. <a href=\"https:\/\/www.couchbase.com\/blog\/ko\/forums\/?utm_source=blogs&amp;utm_medium=link&amp;utm_campaign=blogs\">\ud3ec\ub7fc<\/a>. \uadf8\ub9ac\uace0 \ub2e4\uc74c\uc5d0\ub3c4 \uc801\uadf9\uc801\uc73c\ub85c \ucc38\uc5ec\ud569\ub2c8\ub2e4. <a href=\"https:\/\/stackoverflow.com\/questions\/tagged\/couchbase\">\uc2a4\ud0dd \uc624\ubc84\ud50c\ub85c<\/a>.<\/p>\n<p>\ud2b8\uc704\ud130\ub85c \uc5f0\ub77d\uc8fc\uc138\uc694 <a href=\"https:\/\/twitter.com\/HodGreeley\">\ud638\ub4dc\uadf8\ub9b4\ub9ac<\/a><\/p>","protected":false},"excerpt":{"rendered":"<p>Couchbase Lite runs replications (syncs) using background threads. Starting and stopping replications doesn&#8217;t happen synchronously. This can lead to mistakes in detecting the state of a replication. The Replication class has, depending on platform, either a running property or a [&hellip;]<\/p>","protected":false},"author":73,"featured_media":2919,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"footnotes":""},"categories":[1815,7667,1810],"tags":[1562],"ppma_author":[9042],"class_list":["post-2902","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-best-practices-and-tutorials","category-couchbase-lite","category-couchbase-mobile","tag-replication"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v25.7.1 (Yoast SEO v25.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Determining Status of a Replication in Couchbase Lite - The Couchbase Blog<\/title>\n<meta name=\"description\" content=\"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.couchbase.com\/blog\/ko\/determining-status-replication-couchbase-lite\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Determining Status of a Replication in Couchbase Lite\" \/>\n<meta property=\"og:description\" content=\"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.couchbase.com\/blog\/ko\/determining-status-replication-couchbase-lite\/\" \/>\n<meta property=\"og:site_name\" content=\"The Couchbase Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-07T16:42:52+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-06-14T03:09:45+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"640\" \/>\n\t<meta property=\"og:image:height\" content=\"427\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@HodGreeley\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Hod Greeley, Developer Advocate, Couchbase\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/\"},\"author\":{\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4\"},\"headline\":\"Determining Status of a Replication in Couchbase Lite\",\"datePublished\":\"2017-03-07T16:42:52+00:00\",\"dateModified\":\"2025-06-14T03:09:45+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/\"},\"wordCount\":434,\"commentCount\":2,\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg\",\"keywords\":[\"replication\"],\"articleSection\":[\"Best Practices and Tutorials\",\"Couchbase Lite\",\"Couchbase Mobile\"],\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/\",\"name\":\"Determining Status of a Replication in Couchbase Lite - The Couchbase Blog\",\"isPartOf\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg\",\"datePublished\":\"2017-03-07T16:42:52+00:00\",\"dateModified\":\"2025-06-14T03:09:45+00:00\",\"description\":\"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg\",\"width\":640,\"height\":427,\"caption\":\"Courtesy of Andr\u00e9s Nieto Porras (https:\/\/www.flickr.com\/photos\/anieto2k)\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.couchbase.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Determining Status of a Replication in Couchbase Lite\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#website\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"name\":\"The Couchbase Blog\",\"description\":\"Couchbase, the NoSQL Database\",\"publisher\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#organization\",\"name\":\"The Couchbase Blog\",\"url\":\"https:\/\/www.couchbase.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"contentUrl\":\"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png\",\"width\":218,\"height\":34,\"caption\":\"The Couchbase Blog\"},\"image\":{\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4\",\"name\":\"Hod Greeley, Developer Advocate, Couchbase\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g\",\"caption\":\"Hod Greeley, Developer Advocate, Couchbase\"},\"description\":\"Hod Greeley is a Developer Advocate for Couchbase, living in Silicon Valley. He has over two decades of experience as a software engineer and engineering manager. He has worked in a variety of software fields, including computational physics and chemistry, computer and network security, finance, and mobile. Prior to joining Couchbase in 2016, Hod led developer relations for mobile at Samsung. Hod holds a Ph.D. in chemical physics from Columbia University.\",\"sameAs\":[\"https:\/\/hod.greeley.org\/blog\",\"https:\/\/x.com\/HodGreeley\"],\"url\":\"https:\/\/www.couchbase.com\/blog\/ko\/author\/hod-greeley\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Couchbase Lite\uc5d0\uc11c \ubcf5\uc81c \uc0c1\ud0dc \ud655\uc778\ud558\uae30 - Couchbase \ube14\ub85c\uadf8","description":"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.couchbase.com\/blog\/ko\/determining-status-replication-couchbase-lite\/","og_locale":"ko_KR","og_type":"article","og_title":"Determining Status of a Replication in Couchbase Lite","og_description":"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.","og_url":"https:\/\/www.couchbase.com\/blog\/ko\/determining-status-replication-couchbase-lite\/","og_site_name":"The Couchbase Blog","article_published_time":"2017-03-07T16:42:52+00:00","article_modified_time":"2025-06-14T03:09:45+00:00","og_image":[{"width":640,"height":427,"url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg","type":"image\/jpeg"}],"author":"Hod Greeley, Developer Advocate, Couchbase","twitter_card":"summary_large_image","twitter_creator":"@HodGreeley","twitter_misc":{"Written by":"Hod Greeley, Developer Advocate, Couchbase","Est. reading time":"3\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#article","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/"},"author":{"name":"Hod Greeley, Developer Advocate, Couchbase","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4"},"headline":"Determining Status of a Replication in Couchbase Lite","datePublished":"2017-03-07T16:42:52+00:00","dateModified":"2025-06-14T03:09:45+00:00","mainEntityOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/"},"wordCount":434,"commentCount":2,"publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg","keywords":["replication"],"articleSection":["Best Practices and Tutorials","Couchbase Lite","Couchbase Mobile"],"inLanguage":"ko-KR","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/","url":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/","name":"Couchbase Lite\uc5d0\uc11c \ubcf5\uc81c \uc0c1\ud0dc \ud655\uc778\ud558\uae30 - Couchbase \ube14\ub85c\uadf8","isPartOf":{"@id":"https:\/\/www.couchbase.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage"},"thumbnailUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg","datePublished":"2017-03-07T16:42:52+00:00","dateModified":"2025-06-14T03:09:45+00:00","description":"This blog focuses on how to use Replication class and change listener for checking the status of replication in Couchbase Lite.","breadcrumb":{"@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/"]}]},{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#primaryimage","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/sites\/1\/2017\/03\/19300545790_82ac2a3444_z.jpg","width":640,"height":427,"caption":"Courtesy of Andr\u00e9s Nieto Porras (https:\/\/www.flickr.com\/photos\/anieto2k)"},{"@type":"BreadcrumbList","@id":"https:\/\/www.couchbase.com\/blog\/determining-status-replication-couchbase-lite\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.couchbase.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Determining Status of a Replication in Couchbase Lite"}]},{"@type":"WebSite","@id":"https:\/\/www.couchbase.com\/blog\/#website","url":"https:\/\/www.couchbase.com\/blog\/","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","description":"NoSQL \ub370\uc774\ud130\ubca0\uc774\uc2a4, Couchbase","publisher":{"@id":"https:\/\/www.couchbase.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.couchbase.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/www.couchbase.com\/blog\/#organization","name":"\uce74\uc6b0\uce58\ubca0\uc774\uc2a4 \ube14\ub85c\uadf8","url":"https:\/\/www.couchbase.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","contentUrl":"https:\/\/www.couchbase.com\/blog\/wp-content\/uploads\/2023\/04\/admin-logo.png","width":218,"height":34,"caption":"The Couchbase Blog"},"image":{"@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/9b62593c8a13531e53d52fcd5aabbca4","name":"\ud638\ub4dc \uadf8\ub9b4\ub9ac, \uac1c\ubc1c\uc790 \uc639\ud638\uc790, \uce74\uc6b0\uce58\ubca0\uc774\uc2a4","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/www.couchbase.com\/blog\/#\/schema\/person\/image\/21eb69cb5d4a401fb23b149e4f4e9e87","url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","caption":"Hod Greeley, Developer Advocate, Couchbase"},"description":"\ud638\ub4dc \uadf8\ub808\uc774\ub9ac\ub294 \uc2e4\ub9ac\ucf58\ubc38\ub9ac\uc5d0 \uac70\uc8fc\ud558\ub294 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc758 \uac1c\ubc1c\uc790 \uc639\ud638\uc790\uc785\ub2c8\ub2e4. \uadf8\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4 \ubc0f \uc5d4\uc9c0\ub2c8\uc5b4\ub9c1 \uad00\ub9ac\uc790\ub85c\uc11c 20\ub144 \uc774\uc0c1\uc758 \uacbd\ub825\uc744 \ubcf4\uc720\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub294 \uc804\uc0b0 \ubb3c\ub9ac\ud559 \ubc0f \ud654\ud559, \ucef4\ud4e8\ud130 \ubc0f \ub124\ud2b8\uc6cc\ud06c \ubcf4\uc548, \uae08\uc735, \ubaa8\ubc14\uc77c \ub4f1 \ub2e4\uc591\ud55c \uc18c\ud504\ud2b8\uc6e8\uc5b4 \ubd84\uc57c\uc5d0\uc11c \uc77c\ud574 \uc654\uc2b5\ub2c8\ub2e4. 2016\ub144 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc5d0 \ud569\ub958\ud558\uae30 \uc804\uc5d0\ub294 \uc0bc\uc131\uc5d0\uc11c \ubaa8\ubc14\uc77c \uac1c\ubc1c\uc790 \uad00\uacc4\ub97c \uc774\ub04c\uc5c8\uc2b5\ub2c8\ub2e4. \uceec\ub7fc\ube44\uc544 \ub300\ud559\uad50\uc5d0\uc11c \ud654\ud559 \ubb3c\ub9ac\ud559 \ubc15\uc0ac \ud559\uc704\ub97c \ubc1b\uc558\uc2b5\ub2c8\ub2e4.","sameAs":["https:\/\/hod.greeley.org\/blog","https:\/\/x.com\/HodGreeley"],"url":"https:\/\/www.couchbase.com\/blog\/ko\/author\/hod-greeley\/"}]}},"authors":[{"term_id":9042,"user_id":73,"is_guest":0,"slug":"hod-greeley","display_name":"Hod Greeley, Developer Advocate, Couchbase","avatar_url":"https:\/\/secure.gravatar.com\/avatar\/52d0018695c0ced0d1c68cf64a6195c81dbac03dce5983f98eb209e7c84350df?s=96&d=mm&r=g","first_name":"Hod","last_name":"Greeley","user_url":"https:\/\/hod.greeley.org\/blog","author_category":"","description":"\ud638\ub4dc \uadf8\ub808\uc774\ub9ac\ub294 \uc2e4\ub9ac\ucf58\ubc38\ub9ac\uc5d0 \uac70\uc8fc\ud558\ub294 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc758 \uac1c\ubc1c\uc790 \uc639\ud638\uc790\uc785\ub2c8\ub2e4. \uadf8\ub294 \uc18c\ud504\ud2b8\uc6e8\uc5b4 \uc5d4\uc9c0\ub2c8\uc5b4 \ubc0f \uc5d4\uc9c0\ub2c8\uc5b4\ub9c1 \uad00\ub9ac\uc790\ub85c\uc11c 20\ub144 \uc774\uc0c1\uc758 \uacbd\ub825\uc744 \ubcf4\uc720\ud558\uace0 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub294 \uc804\uc0b0 \ubb3c\ub9ac\ud559 \ubc0f \ud654\ud559, \ucef4\ud4e8\ud130 \ubc0f \ub124\ud2b8\uc6cc\ud06c \ubcf4\uc548, \uae08\uc735, \ubaa8\ubc14\uc77c \ub4f1 \ub2e4\uc591\ud55c \uc18c\ud504\ud2b8\uc6e8\uc5b4 \ubd84\uc57c\uc5d0\uc11c \uc77c\ud574 \uc654\uc2b5\ub2c8\ub2e4. 2016\ub144 \uce74\uc6b0\uce58\ubca0\uc774\uc2a4\uc5d0 \ud569\ub958\ud558\uae30 \uc804\uc5d0\ub294 \uc0bc\uc131\uc5d0\uc11c \ubaa8\ubc14\uc77c \uac1c\ubc1c\uc790 \uad00\uacc4\ub97c \uc774\ub04c\uc5c8\uc2b5\ub2c8\ub2e4. \uceec\ub7fc\ube44\uc544 \ub300\ud559\uad50\uc5d0\uc11c \ud654\ud559 \ubb3c\ub9ac\ud559 \ubc15\uc0ac \ud559\uc704\ub97c \ubc1b\uc558\uc2b5\ub2c8\ub2e4."}],"_links":{"self":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2902","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/users\/73"}],"replies":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/comments?post=2902"}],"version-history":[{"count":0,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/posts\/2902\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media\/2919"}],"wp:attachment":[{"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/media?parent=2902"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/categories?post=2902"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/tags?post=2902"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.couchbase.com\/blog\/ko\/wp-json\/wp\/v2\/ppma_author?post=2902"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}