간단한 미들웨어를 구성하려 하는데...

fresian의 이미지

다수(수십에서 수백까지)의 클라이언트와 하나의 DB서버가 존재하는 C/S구조에서, 이 둘을 연결하는 데이터베이스 미들웨어 서버를 중간에 추가하려고 합니다.

미들웨어가 특별한 기능을 요구하지는 않으며, 실질적으로 필요한 이유는 5-client 패키지로 구매한 오라클 서버에 클라이언트의 쿼리를 중계해서 전달하는 미들웨어를 연결해 1 Client처럼 처리하기 위해서입니다. (편법이긴 합니다만, 어쨌든 이렇게 해야 한다고 하네요)

이러한 구조에서 쓸 수 있는 간단한 데이터베이스 미들웨어가 오픈소스 혹은 상용화된 소프트웨어로 있을까요? 비싸고 복잡한 미들웨어가 필요한 구조는 아니고, 회사에 네트워크 프로그래머가 없는 상황에서 프로젝트 중간에 갑작스럽게 추가된 요구사항이라 자체제작은 힘듭니다. 둘 다 없다면, 이런 류의 개발을 맡길 수 있는 업체라도 알려주시면 감사하겠습니다 ㅠㅜ/

endofhope의 이미지

지금 쓰고 계시는 클라이언트의 행동 양식에 해결책이 의존할것 같습니다.
단속적인 요청만을 한다면 Connection Pooling 을 구현하는 것이 좋은 해결책이 될 것이고,
클라이언트 마다 DB 세션을 길게 유지하는 것이 필요하다면 오라클 동시 접속수를 늘리지 않고서는 해결이 힘들 것 같습니다.

--
말할 수 있는 것은 분명하게 말해질 수 있다;
말할 수 없는 것에 대해서는 침묵해야한다.
논리철학논고 - 루드비히 비트겐슈타인

--
말할 수 있는 것은 분명하게 말해질 수 있다;
말해질 수 없는 것에 대해서는 침묵해야한다.
논리철학논고 - 루드비히 비트겐슈타인

pizza1977의 이미지

DB를 이용하는 이유는 말그대로 영속적인 데이터 유지 뿐아니라 자체에서 제공하는 커넥션, 동기화, 어느 정도의
쿼리 성능 향상의 알고리즘... 등등을 이용하기 위함인데...

간단히 미들웨어를 추가하는 것처럼 보이는 요구사항이 데이터 영속적을 제외한 부분을 모두 건드리네요.
쉽게보면 중간에서 Relay만 해주는 것처럼 보이지만...
윗분 말씀대로 Client의 성격에 따라 지옥과 천당이 와따가따 할 것 같습니다.

-------------
포탈이는 불사신

-------------
포탈이는 불사신

fresian의 이미지

답변 감사드립니다.

질문에 깜빡하고 올리지 않은 부분이 있었는데.. DB 서버에 접속하는 클라이언트는 C++, C#, Java의 3개 언어를 사용합니다. 그래서 단순히 소켓 통신으로 쿼리를 relay하는 것으로는 구현하기가 힘듭니다.

그리고 일정과 인력 관계상 직접 구현하는 것보다는 아웃소싱이나 솔루션 구매로 해결해야 하는 상황이라는 것..
(그러고보니 프로그래밍 QnA란에는 조금 맞지 않는 내용일 수도 있겠군요 OTL)

sunkens의 이미지

중간에 갑작스럽게 추가된 요구사항치고는 너무 심하네요..
커넥션, 트랜잭션 관리만 해도 머리가 아프겠네요..

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.