프로그래밍 QnA

jagalchee의 이미지

MySQL은 항상 Atomic 하게 작업을 처리 하나요?

MySQL 에 간단한 테이블을 하나 만들었습니다.
그리고 이 테이블에 자료를 insert 혹은 select 혹은 delete 혹은 update를 수행하는 간단한 C 프로그램을 멀티 프로세스 모드(즉, fork() 이용)로 짰습니다.

즉, 어떤 자식 프로세스에선 이 테이블에 update 를 할려고 할 때, 다른 자식 프로세스는 이 테이블에 delete 를 하는 상황이 발생할 수가 있습니다.
이런 경우 항상 어떤 작업 하나만이 Atomic 하게 진행한 후에, 다른 작업이 진행 되도록 하게 하고 싶습니다.(즉, update 하는 도중에 delete 를 할려는 시도가 오면, 이 delete는 update 가 끝날때 까지 블락 되었다가 실행되게 한다던가 말입니다.)

googlejoa의 이미지

http/1.0 과 http/1.1 의 차이??

php 에서 소켓 연결 하는 것을 보면 다음과 같이 하면 됩니다.

$domain="url.com";
$port="80";
$query="/index.html";
 
   function getPage($domain,$port,$query)
   {
      $fp = @fsockopen($domain, $port, &$errno, &$errstr, 1024);
 
      if($fp)
      {
         fputs($fp, "GET $query HTTP/1.0\r\n");
         fputs($fp, "HOST $domain\r\n");
         fputs($fp, "User-Agent Mozilla/4.0\r\n");
         fputs($fp, "content-typetext/html\r\n\r\n");
         while(!feof($fp))
         {
            $temp=fgets($fp,128);
            $str.=$temp;
         }

jagalchee의 이미지

fork() 썼을때 소켓 discriptor를 어떻게 구분할까요?

[code:1]#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <unistd.h>
#include <netinet/in.h>

#define SERVER_PORT 5125

int main()
{
struct sockaddr_in serverAddr;
int listenSocket, connectSocket, status, count=0;
socklen_t serverAddrSize = (socklen_t)sizeof(struct sockaddr_in);
pid_t pid;

serverAddr.sin_family = AF_INET;
serverAddr.sin_port = htons(SERVER_PORT);
serverAddr.sin_addr.s_addr = htonl(INADDR_ANY);
bzero( &(serverAddr.sin_zero), 8 );

itexpert의 이미지

while문에 관한 질문입니다. 넘 어렵네요.^^;;

안녕하세요.
지금 하려는 작업은
tcp소켓으로 연결된 서버한테 클라이언트들의 정보를 받아
배열에 저장시켜, 그에따른 메뉴를 보여주고처리하려합니다.
그런데. 처음 클라이언트의 정보를 받고,
바로 두번째 while문으로 넘어가서,
받아야할 정보는 1개 이상인데요.
1개만 받고 두번째 while문으로 빠져버리니..데이터한건만을
보여주게되네요.
어떻게 하면, 정보를 다 받고, 두번째 while문으로 갈수있을까요?
프로그램 구조적 문제인가요? 설계를 잘못했는지..

bluemoon의 이미지

XUL과 Javascript 문제..

tree에 나타난 책의 목록중 하나를 선택하면 선택된 줄의 값이 textbox에 입력되도록 하는 예입니다.

//.xul

<tree id="tre-book-list" onselect="doSelect(event)">
 .....
    <treecol id="tcl-book-name" lable="Name" />
    <treecol id="tcl-book-author" lable="Author" />
.....
</tree>

<textbox id="txt-book-name" label="Name" />
<textbox id="txt-book-author" label="Author" />

//.js
[code:1]

랜덤여신의 이미지

XHTML 1.0 Frameset - frameset 태그의 border 옵션

XHTML 1.0 Frameset - frameset 태그의 border 옵션

안녕하세요...
프레임을 만들 때

[code:1]<frameset rows="90,*">
<frame id="frm_toolbar" src="./component/toolbar/toolbar.dic" frameborder="0" scrolling="no" />
<frameset cols="216,*">
<frameset rows="84,21,*">
<frame name="frm_searchtab" src="color.dic?color=blue" frameborder="0" scrolling="no" noresize="noresize" />
<frame name="frm_dtbar" src="color.dic?color=red" frameborder="0" scrolling="no" noresize="noresize" />

lkjt의 이미지

Accept 는 무슨 역할을 하는건가요?

아,, 오늘 질문을 너무 많이 올리는군요..

RFC에는 이 브라우저가 가능한 멀티미디어를 보내는거라 하는데.

text/html , image/x-bitmap 이런식으로 보내게 되면

어떻게 recv가 되는거죠??

테스트 해본결과 다 같은데, Accept: text/*, text/html, text/html;level=1, */*

lkjt의 이미지

소켓으로 Recv를 하는데 중간중간에 이상한 문자들이 따라 옵니

소켓 을 생성하고
접속한후
GET / HTTP/1.1\r\n\r\n를 보내면

recv가 오는데,

오긴 오는데 중간중간에 이상한 숫자나 문자가 포함되는군요.

이건 왜이러는건가요??

혹시나해서 Sendbuffer를 초기화 시켜도 마찬가지더군요.

어떻게 해야 하는거죠?

lkjt의 이미지

다시 연결을 요청해야 서버가 허락해주나요?

소켓으로 HTML 소스 받아오기를 하고 있는데요.

처음에
GET / HTTP/1.1\r\n\r\n

이렇게 보내면 recv가 잘됩니다.

그런데 다시 GET / HTTP/1.1\r\n\r\n
보내면 recv가 없는데요.

같은 서버에서 여러번 받고 싶으면 소켓 생성과 연결을 다시 해줘야 하는건가요?

loader의 이미지

서버를 여러대 운영하는 경우의 프로그래밍...

안녕하세요?..

좀 크다 싶은 서비스를 제공할때는 보통 서버를 여러대 돌리는데요..

그때 각 서버에 걸리는 부하에 대한 load balancing은 프로그래머가

직접 코드에 쓰나요?... 따로 load balancing을 해주는 프로그램이 있나요?

(있다면 아마도 우선은 그 프로그램의 port에 접근하면 거기서

어느 서버로 작업을 넘겨줄지를 판단해서 다시 나누어 주는 방식이 되겠죠?).

페이지

프로그래밍 QnA 구독하기