DataBase : ms sql
연결 방식 : 델파이에서 있는 DataBase
서버는 한국-경기에 있습니다.
경남 .전남에서는 프로그램 설치하여
경기에 있는 서버로 잘 접속이 됩니다.
그런데
중국에서 접속을 하려면 너무나도 많은 속도가 걸리고
연결이 자주(접속도 힘듬) 끊어지는데
원인이나 다른 대안책에 도움을 바랍니다.
부탁드립니다.
흠.. 이거 힘든 내용이네요..
3-Tier로 개발을 했다면, 좀 나을텐데..
3-tier로 하시지 않은 것 같네요..
혹시 Midas를 이용해 보셨는지..
소켓통신을 이용한 접속이면 아주 잘 돌아갑니다..
다만, MIDAS 라이센스 비용이 장난이 아니라서..
그게 탈이죠..
이것도 저것도 안된다면,
복제서버를 구성해서 사용해 보시는게 어떠할지..
일단, 중앙서버에 복제서버를 구축하시고,
Client는 각 나라에서 복제서버에 연결한 내용을 사용하도록
하는 겁니다..
복제 원리는 아시겠죠?
모르신다면, MS-SQL의 Replication Help(도움말)를 참조하세요
복제서버도 일단 느리긴 합니다만,
시간을 1시간단위로 복제하도록 하구요..
각 Client는 복제Client와 연결해서 사용하는 겁니다..
복제 Client는 복제서버에서 가져온 Data이므로
일단 Table처럼 사용하시면 되구요..
Insert/Update/Delete 모두 됩니다..
물론, Network이 너무 느리다면, 복세시 Gab이 많이 생기지만,
그나마 낫지 않을까 합니다..
이것도 안된다면,
3-Tier로 Application을 새로 개발하셔야 합니다..
게임같은걸 보시면, 당근히 3-Tier 개념으로 구동되는걸
아실 수 있습니다..
대량의 Data가 왔다갔다 하기에는 할 수 없이 쓰는 방법이죠
이 방법도 사실은 소켓 통신의 일종인데..
소켓 통신이 아니면, 그러니까 TCP/IP를 이용한 것이 아니면,
Data 전송에 엄청난 시간적/공간적 손실이 올겁니다..
시간적/공간적 손실이라함은.
1. Client에서 Server로 접속시, Client에서 Server에게 DB의 각종정보를
요구하게 되는데 이것을 가져오는 시간이 너무 오래 걸리는 것이죠
2. Client에서 Server로 SQL문을 보내면, Connect-Parsing-Data Finding-Memory Allocation-Data Collection-Client Transfer를 거치게 되는데
이 시간이 너무 오래걸린다는 거죠(즉, 시간/공간 모두 소비)
3. Server에서 받은 정보를 이용해서 Client에서는 이것 저것 할당하는
작업을 수행함과 동시에 Server에게 기타 필요정보를 보내달라고 요구합니다
이것도 또한 불필요한 사항인데.. 이것 또한 응답시간이 필요한 것이죠
간단히 1,2,3번만 보더라도.. 상당한 시간이 소요됩니다..
하지만, 3-Tier로 구성을 하면,
Dedicate가 Server Platform에 존재하므로,
이 모든 시간은 찰라에 지나지 않습니다.
단지, Client-Server간에는 서로간에 필요한 정보만 전송하는
형태를 가지므로, 그나마 빠르다는 것입니다..
간단히, 1,2,3을 거치지 않기 때문이라고 말할 수 있겠습니다..
복제서버, 3-Tier를 이용한 방법이 아니고는 뽀족한 방법이 없네요..
Network에 엄청난 투자를 하신다면 모르지만,
좀 힘들꺼라고 생각됩니다..
일단 거리가 멀면, Packet이 지나가는 Router 개수가 많기 때문에
당연히 Delay되는건 필수로 감안해야 한다는 이야기입니다..
답이 되진 않았을테고,
해법도 되지 않았을테지만, 제가 아는 방법에서는
대충 말씀드린거 같네요..
일단, Client와 Server간에 거치는 router 개수를 확인해 보시고,
너무 많으시다면, 광 Cable로 연결된 루틴을 탈 수 있는 Line 혹은
업체를 검색해 보시는게 좋으리라 봅니다..
광 Cable을 이용한 방식은 Router같은 Delay를 그나마 해소시키기
때문이겠죠..
그럼..
화이팅~~
저희들은 중국,일본, 태국, 미국, 유럽에 회사가 있어요
각 나라마다. 서버가 다 있죠. 한국에서 각 나라에 서버에 접속할것 같으면
아시아권은 약 5-7초, 유럽, 미국은 7-10초에 연결되었습니다.
속도가 너무 느려서, 여러 회사에 문의 하니 인공위성을 통한 전송 방식 있다고 하더라고요(자세한 내용은 잘모르지만) 이것은 일반 네트워크 보다 가격이 너무 비싸더라고요...
그래서 지금은 어치피 속도가 늦은것, 필요한 직원만 VPN 통하여 연결 하고 있습니다.
속도가 너무 늦어 일할때 짜증 납니다.
저희 회사에서도 솔류션을 구하고 있습니다.
다른 분들 좋은 솔루션이 있으면 이야기 해 주시면 감사 하겠습니다.
3-Tier로 개발을 했다면, 좀 나을텐데..
3-tier로 하시지 않은 것 같네요..
혹시 Midas를 이용해 보셨는지..
소켓통신을 이용한 접속이면 아주 잘 돌아갑니다..
다만, MIDAS 라이센스 비용이 장난이 아니라서..
그게 탈이죠..
이것도 저것도 안된다면,
복제서버를 구성해서 사용해 보시는게 어떠할지..
일단, 중앙서버에 복제서버를 구축하시고,
Client는 각 나라에서 복제서버에 연결한 내용을 사용하도록
하는 겁니다..
복제 원리는 아시겠죠?
모르신다면, MS-SQL의 Replication Help(도움말)를 참조하세요
복제서버도 일단 느리긴 합니다만,
시간을 1시간단위로 복제하도록 하구요..
각 Client는 복제Client와 연결해서 사용하는 겁니다..
복제 Client는 복제서버에서 가져온 Data이므로
일단 Table처럼 사용하시면 되구요..
Insert/Update/Delete 모두 됩니다..
물론, Network이 너무 느리다면, 복세시 Gab이 많이 생기지만,
그나마 낫지 않을까 합니다..
이것도 안된다면,
3-Tier로 Application을 새로 개발하셔야 합니다..
게임같은걸 보시면, 당근히 3-Tier 개념으로 구동되는걸
아실 수 있습니다..
대량의 Data가 왔다갔다 하기에는 할 수 없이 쓰는 방법이죠
이 방법도 사실은 소켓 통신의 일종인데..
소켓 통신이 아니면, 그러니까 TCP/IP를 이용한 것이 아니면,
Data 전송에 엄청난 시간적/공간적 손실이 올겁니다..
시간적/공간적 손실이라함은.
1. Client에서 Server로 접속시, Client에서 Server에게 DB의 각종정보를
요구하게 되는데 이것을 가져오는 시간이 너무 오래 걸리는 것이죠
2. Client에서 Server로 SQL문을 보내면, Connect-Parsing-Data Finding-Memory Allocation-Data Collection-Client Transfer를 거치게 되는데
이 시간이 너무 오래걸린다는 거죠(즉, 시간/공간 모두 소비)
3. Server에서 받은 정보를 이용해서 Client에서는 이것 저것 할당하는
작업을 수행함과 동시에 Server에게 기타 필요정보를 보내달라고 요구합니다
이것도 또한 불필요한 사항인데.. 이것 또한 응답시간이 필요한 것이죠
간단히 1,2,3번만 보더라도.. 상당한 시간이 소요됩니다..
하지만, 3-Tier로 구성을 하면,
Dedicate가 Server Platform에 존재하므로,
이 모든 시간은 찰라에 지나지 않습니다.
단지, Client-Server간에는 서로간에 필요한 정보만 전송하는
형태를 가지므로, 그나마 빠르다는 것입니다..
간단히, 1,2,3을 거치지 않기 때문이라고 말할 수 있겠습니다..
복제서버, 3-Tier를 이용한 방법이 아니고는 뽀족한 방법이 없네요..
Network에 엄청난 투자를 하신다면 모르지만,
좀 힘들꺼라고 생각됩니다..
일단 거리가 멀면, Packet이 지나가는 Router 개수가 많기 때문에
당연히 Delay되는건 필수로 감안해야 한다는 이야기입니다..
답이 되진 않았을테고,
해법도 되지 않았을테지만, 제가 아는 방법에서는
대충 말씀드린거 같네요..
일단, Client와 Server간에 거치는 router 개수를 확인해 보시고,
너무 많으시다면, 광 Cable로 연결된 루틴을 탈 수 있는 Line 혹은
업체를 검색해 보시는게 좋으리라 봅니다..
광 Cable을 이용한 방식은 Router같은 Delay를 그나마 해소시키기
때문이겠죠..
그럼..
화이팅~~